{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "c3087360",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.nn as nn\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import scipy.io\n",
    "# Define the coRNNCell\n",
    "class coRNNCell(nn.Module):\n",
    "    def __init__(self, n_inp, n_hid, dt, gamma, epsilon):\n",
    "        super(coRNNCell, self).__init__()\n",
    "        self.dt = dt\n",
    "        self.gamma = gamma\n",
    "        self.epsilon = epsilon\n",
    "        self.i2h = nn.Linear(n_inp + n_hid + n_hid, n_hid)\n",
    "\n",
    "    def forward(self, x, hy, hz):\n",
    "        hz = hz + self.dt * (torch.tanh(self.i2h(torch.cat((x, hz, hy), 1)))\n",
    "                             - self.gamma * hy - self.epsilon * hz)\n",
    "        hy = hy + self.dt * hz\n",
    "\n",
    "        return hy, hz\n",
    "\n",
    "# Define the coRNN model\n",
    "class coRNN(nn.Module):\n",
    "    def __init__(self, n_inp, n_hid, n_out, dt, gamma, epsilon):\n",
    "        super(coRNN, self).__init__()\n",
    "        self.n_hid = n_hid\n",
    "        self.cell = coRNNCell(n_inp, n_hid, dt, gamma, epsilon)\n",
    "        self.readout = nn.Linear(n_hid, n_out)\n",
    "\n",
    "    def forward(self, x):\n",
    "        hy = torch.zeros(x.size(1), self.n_hid)\n",
    "        hz = torch.zeros(x.size(1), self.n_hid)\n",
    "\n",
    "        for t in range(x.size(0)):\n",
    "            hy, hz = self.cell(x[t], hy, hz)\n",
    "        output = self.readout(hy)\n",
    "\n",
    "        return output\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d5f77619",
   "metadata": {},
   "source": [
    "### PINN data importing"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "5d6cfa8b",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Load the .mat file\n",
    "mat_data = scipy.io.loadmat('burg.mat')\n",
    "\n",
    "# Access the variables stored in the .mat file\n",
    "# The variable names in the .mat file become keys in the loaded dictionary\n",
    "x = mat_data['x']\n",
    "t = mat_data['t']\n",
    "u = mat_data['u1']\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0082d614",
   "metadata": {},
   "source": [
    "### Exact Solution data importing"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "10519e4e",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "x size (256, 1)\n",
      "t size (100, 1)\n",
      "u size (256, 100)\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1080x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# importing data\n",
    "\n",
    "import torch\n",
    "import torch.nn as nn\n",
    "import numpy as np\n",
    "import time\n",
    "import scipy.io\n",
    "\n",
    "# Load the .mat file\n",
    "mat_data = scipy.io.loadmat('burgers_shock.mat')\n",
    "\n",
    "# Access the variables stored in the .mat file\n",
    "# The variable names in the .mat file become keys in the loaded dictionary\n",
    "x = mat_data['x']\n",
    "t = mat_data['t']\n",
    "u_1 = mat_data['usol']\n",
    "\n",
    "#Use the loaded variables as needed\n",
    "print(\"x size\", x.shape)\n",
    "print(\"t size\", t.shape)\n",
    "print(\"u size\", u.shape)\n",
    "\n",
    "X, T = np.meshgrid(x, t)\n",
    "# Define custom color levels\n",
    "c_levels = np.linspace(np.min(u_1), np.max(u_1), 100)\n",
    "\n",
    "# Plot the contour\n",
    "plt.figure(figsize=(15, 5))\n",
    "plt.contourf(T, X, u_1.T, levels=c_levels, cmap='coolwarm')\n",
    "plt.xlabel('t')\n",
    "plt.ylabel('x')\n",
    "plt.title('Burgers')\n",
    "plt.colorbar()  # Add a colorbar for the contour levels\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "08861d5f",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/data/localhome/tkapoor/.local/lib/python3.8/site-packages/torch/nn/modules/loss.py:520: UserWarning: Using a target size (torch.Size([1, 79, 256])) that is different to the input size (torch.Size([79, 256])). This will likely lead to incorrect results due to broadcasting. Please ensure they have the same size.\n",
      "  return F.mse_loss(input, target, reduction=self.reduction)\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 10/20000, Loss: 0.40657699\n",
      "Epoch: 20/20000, Loss: 0.39165229\n",
      "Epoch: 30/20000, Loss: 0.37714112\n",
      "Epoch: 40/20000, Loss: 0.36311805\n",
      "Epoch: 50/20000, Loss: 0.34962356\n",
      "Epoch: 60/20000, Loss: 0.33664620\n",
      "Epoch: 70/20000, Loss: 0.32416299\n",
      "Epoch: 80/20000, Loss: 0.31214893\n",
      "Epoch: 90/20000, Loss: 0.30058074\n",
      "Epoch: 100/20000, Loss: 0.28943807\n",
      "Epoch: 110/20000, Loss: 0.27870274\n",
      "Epoch: 120/20000, Loss: 0.26835850\n",
      "Epoch: 130/20000, Loss: 0.25839061\n",
      "Epoch: 140/20000, Loss: 0.24878530\n",
      "Epoch: 150/20000, Loss: 0.23952977\n",
      "Epoch: 160/20000, Loss: 0.23061195\n",
      "Epoch: 170/20000, Loss: 0.22202043\n",
      "Epoch: 180/20000, Loss: 0.21374433\n",
      "Epoch: 190/20000, Loss: 0.20577317\n",
      "Epoch: 200/20000, Loss: 0.19809704\n",
      "Epoch: 210/20000, Loss: 0.19070624\n",
      "Epoch: 220/20000, Loss: 0.18359156\n",
      "Epoch: 230/20000, Loss: 0.17674398\n",
      "Epoch: 240/20000, Loss: 0.17015491\n",
      "Epoch: 250/20000, Loss: 0.16381593\n",
      "Epoch: 260/20000, Loss: 0.15771894\n",
      "Epoch: 270/20000, Loss: 0.15185599\n",
      "Epoch: 280/20000, Loss: 0.14621949\n",
      "Epoch: 290/20000, Loss: 0.14080197\n",
      "Epoch: 300/20000, Loss: 0.13559623\n",
      "Epoch: 310/20000, Loss: 0.13059524\n",
      "Epoch: 320/20000, Loss: 0.12579218\n",
      "Epoch: 330/20000, Loss: 0.12118042\n",
      "Epoch: 340/20000, Loss: 0.11675352\n",
      "Epoch: 350/20000, Loss: 0.11250518\n",
      "Epoch: 360/20000, Loss: 0.10842934\n",
      "Epoch: 370/20000, Loss: 0.10452005\n",
      "Epoch: 380/20000, Loss: 0.10077158\n",
      "Epoch: 390/20000, Loss: 0.09717830\n",
      "Epoch: 400/20000, Loss: 0.09373476\n",
      "Epoch: 410/20000, Loss: 0.09043568\n",
      "Epoch: 420/20000, Loss: 0.08727595\n",
      "Epoch: 430/20000, Loss: 0.08425054\n",
      "Epoch: 440/20000, Loss: 0.08135460\n",
      "Epoch: 450/20000, Loss: 0.07858345\n",
      "Epoch: 460/20000, Loss: 0.07593249\n",
      "Epoch: 470/20000, Loss: 0.07339729\n",
      "Epoch: 480/20000, Loss: 0.07097354\n",
      "Epoch: 490/20000, Loss: 0.06865709\n",
      "Epoch: 500/20000, Loss: 0.06644383\n",
      "Epoch: 510/20000, Loss: 0.06432986\n",
      "Epoch: 520/20000, Loss: 0.06231138\n",
      "Epoch: 530/20000, Loss: 0.06038468\n",
      "Epoch: 540/20000, Loss: 0.05854620\n",
      "Epoch: 550/20000, Loss: 0.05679246\n",
      "Epoch: 560/20000, Loss: 0.05512010\n",
      "Epoch: 570/20000, Loss: 0.05352588\n",
      "Epoch: 580/20000, Loss: 0.05200665\n",
      "Epoch: 590/20000, Loss: 0.05055937\n",
      "Epoch: 600/20000, Loss: 0.04918109\n",
      "Epoch: 610/20000, Loss: 0.04786899\n",
      "Epoch: 620/20000, Loss: 0.04662030\n",
      "Epoch: 630/20000, Loss: 0.04543236\n",
      "Epoch: 640/20000, Loss: 0.04430262\n",
      "Epoch: 650/20000, Loss: 0.04322860\n",
      "Epoch: 660/20000, Loss: 0.04220790\n",
      "Epoch: 670/20000, Loss: 0.04123821\n",
      "Epoch: 680/20000, Loss: 0.04031732\n",
      "Epoch: 690/20000, Loss: 0.03944309\n",
      "Epoch: 700/20000, Loss: 0.03861342\n",
      "Epoch: 710/20000, Loss: 0.03782636\n",
      "Epoch: 720/20000, Loss: 0.03707996\n",
      "Epoch: 730/20000, Loss: 0.03637240\n",
      "Epoch: 740/20000, Loss: 0.03570188\n",
      "Epoch: 750/20000, Loss: 0.03506669\n",
      "Epoch: 760/20000, Loss: 0.03446521\n",
      "Epoch: 770/20000, Loss: 0.03389585\n",
      "Epoch: 780/20000, Loss: 0.03335710\n",
      "Epoch: 790/20000, Loss: 0.03284749\n",
      "Epoch: 800/20000, Loss: 0.03236563\n",
      "Epoch: 810/20000, Loss: 0.03191018\n",
      "Epoch: 820/20000, Loss: 0.03147984\n",
      "Epoch: 830/20000, Loss: 0.03107340\n",
      "Epoch: 840/20000, Loss: 0.03068966\n",
      "Epoch: 850/20000, Loss: 0.03032750\n",
      "Epoch: 860/20000, Loss: 0.02998582\n",
      "Epoch: 870/20000, Loss: 0.02966359\n",
      "Epoch: 880/20000, Loss: 0.02935983\n",
      "Epoch: 890/20000, Loss: 0.02907358\n",
      "Epoch: 900/20000, Loss: 0.02880394\n",
      "Epoch: 910/20000, Loss: 0.02855004\n",
      "Epoch: 920/20000, Loss: 0.02831104\n",
      "Epoch: 930/20000, Loss: 0.02808618\n",
      "Epoch: 940/20000, Loss: 0.02787468\n",
      "Epoch: 950/20000, Loss: 0.02767584\n",
      "Epoch: 960/20000, Loss: 0.02748897\n",
      "Epoch: 970/20000, Loss: 0.02731342\n",
      "Epoch: 980/20000, Loss: 0.02714855\n",
      "Epoch: 990/20000, Loss: 0.02699380\n",
      "Epoch: 1000/20000, Loss: 0.02684859\n",
      "Epoch: 1010/20000, Loss: 0.02671239\n",
      "Epoch: 1020/20000, Loss: 0.02658468\n",
      "Epoch: 1030/20000, Loss: 0.02646499\n",
      "Epoch: 1040/20000, Loss: 0.02635287\n",
      "Epoch: 1050/20000, Loss: 0.02624786\n",
      "Epoch: 1060/20000, Loss: 0.02614956\n",
      "Epoch: 1070/20000, Loss: 0.02605758\n",
      "Epoch: 1080/20000, Loss: 0.02597155\n",
      "Epoch: 1090/20000, Loss: 0.02589111\n",
      "Epoch: 1100/20000, Loss: 0.02581593\n",
      "Epoch: 1110/20000, Loss: 0.02574569\n",
      "Epoch: 1120/20000, Loss: 0.02568010\n",
      "Epoch: 1130/20000, Loss: 0.02561887\n",
      "Epoch: 1140/20000, Loss: 0.02556174\n",
      "Epoch: 1150/20000, Loss: 0.02550844\n",
      "Epoch: 1160/20000, Loss: 0.02545875\n",
      "Epoch: 1170/20000, Loss: 0.02541244\n",
      "Epoch: 1180/20000, Loss: 0.02536929\n",
      "Epoch: 1190/20000, Loss: 0.02532910\n",
      "Epoch: 1200/20000, Loss: 0.02529169\n",
      "Epoch: 1210/20000, Loss: 0.02525686\n",
      "Epoch: 1220/20000, Loss: 0.02522446\n",
      "Epoch: 1230/20000, Loss: 0.02519432\n",
      "Epoch: 1240/20000, Loss: 0.02516629\n",
      "Epoch: 1250/20000, Loss: 0.02514021\n",
      "Epoch: 1260/20000, Loss: 0.02511594\n",
      "Epoch: 1270/20000, Loss: 0.02509334\n",
      "Epoch: 1280/20000, Loss: 0.02507222\n",
      "Epoch: 1290/20000, Loss: 0.02505214\n",
      "Epoch: 1300/20000, Loss: 0.02501829\n",
      "Epoch: 1310/20000, Loss: 0.02484345\n",
      "Epoch: 1320/20000, Loss: 0.02472258\n",
      "Epoch: 1330/20000, Loss: 0.02453099\n",
      "Epoch: 1340/20000, Loss: 0.02434904\n",
      "Epoch: 1350/20000, Loss: 0.02405222\n",
      "Epoch: 1360/20000, Loss: 0.02375865\n",
      "Epoch: 1370/20000, Loss: 0.02348395\n",
      "Epoch: 1380/20000, Loss: 0.02321473\n",
      "Epoch: 1390/20000, Loss: 0.02297538\n",
      "Epoch: 1400/20000, Loss: 0.02275577\n",
      "Epoch: 1410/20000, Loss: 0.02254966\n",
      "Epoch: 1420/20000, Loss: 0.02235206\n",
      "Epoch: 1430/20000, Loss: 0.02216301\n",
      "Epoch: 1440/20000, Loss: 0.02198201\n",
      "Epoch: 1450/20000, Loss: 0.02180766\n",
      "Epoch: 1460/20000, Loss: 0.02163881\n",
      "Epoch: 1470/20000, Loss: 0.02147460\n",
      "Epoch: 1480/20000, Loss: 0.02131447\n",
      "Epoch: 1490/20000, Loss: 0.02115793\n",
      "Epoch: 1500/20000, Loss: 0.02100459\n",
      "Epoch: 1510/20000, Loss: 0.02085411\n",
      "Epoch: 1520/20000, Loss: 0.02070621\n",
      "Epoch: 1530/20000, Loss: 0.02056060\n",
      "Epoch: 1540/20000, Loss: 0.02041707\n",
      "Epoch: 1550/20000, Loss: 0.02027538\n",
      "Epoch: 1560/20000, Loss: 0.02013536\n",
      "Epoch: 1570/20000, Loss: 0.01999683\n",
      "Epoch: 1580/20000, Loss: 0.01985966\n",
      "Epoch: 1590/20000, Loss: 0.01972372\n",
      "Epoch: 1600/20000, Loss: 0.01958894\n",
      "Epoch: 1610/20000, Loss: 0.01945523\n",
      "Epoch: 1620/20000, Loss: 0.01932254\n",
      "Epoch: 1630/20000, Loss: 0.01919082\n",
      "Epoch: 1640/20000, Loss: 0.01906003\n",
      "Epoch: 1650/20000, Loss: 0.01893014\n",
      "Epoch: 1660/20000, Loss: 0.01880110\n",
      "Epoch: 1670/20000, Loss: 0.01867289\n",
      "Epoch: 1680/20000, Loss: 0.01854547\n",
      "Epoch: 1690/20000, Loss: 0.01841880\n",
      "Epoch: 1700/20000, Loss: 0.01829286\n",
      "Epoch: 1710/20000, Loss: 0.01816760\n",
      "Epoch: 1720/20000, Loss: 0.01804301\n",
      "Epoch: 1730/20000, Loss: 0.01791906\n",
      "Epoch: 1740/20000, Loss: 0.01779574\n",
      "Epoch: 1750/20000, Loss: 0.01767305\n",
      "Epoch: 1760/20000, Loss: 0.01755099\n",
      "Epoch: 1770/20000, Loss: 0.01742956\n",
      "Epoch: 1780/20000, Loss: 0.01730878\n",
      "Epoch: 1790/20000, Loss: 0.01718865\n",
      "Epoch: 1800/20000, Loss: 0.01706918\n",
      "Epoch: 1810/20000, Loss: 0.01695039\n",
      "Epoch: 1820/20000, Loss: 0.01683227\n",
      "Epoch: 1830/20000, Loss: 0.01671483\n",
      "Epoch: 1840/20000, Loss: 0.01659808\n",
      "Epoch: 1850/20000, Loss: 0.01648200\n",
      "Epoch: 1860/20000, Loss: 0.01636660\n",
      "Epoch: 1870/20000, Loss: 0.01625186\n",
      "Epoch: 1880/20000, Loss: 0.01613778\n",
      "Epoch: 1890/20000, Loss: 0.01602435\n",
      "Epoch: 1900/20000, Loss: 0.01591155\n",
      "Epoch: 1910/20000, Loss: 0.01579939\n",
      "Epoch: 1920/20000, Loss: 0.01568785\n",
      "Epoch: 1930/20000, Loss: 0.01557692\n",
      "Epoch: 1940/20000, Loss: 0.01546661\n",
      "Epoch: 1950/20000, Loss: 0.01535692\n",
      "Epoch: 1960/20000, Loss: 0.01524783\n",
      "Epoch: 1970/20000, Loss: 0.01513935\n",
      "Epoch: 1980/20000, Loss: 0.01503148\n",
      "Epoch: 1990/20000, Loss: 0.01492423\n",
      "Epoch: 2000/20000, Loss: 0.01481758\n",
      "Epoch: 2010/20000, Loss: 0.01471154\n",
      "Epoch: 2020/20000, Loss: 0.01460613\n",
      "Epoch: 2030/20000, Loss: 0.01450133\n",
      "Epoch: 2040/20000, Loss: 0.01439717\n",
      "Epoch: 2050/20000, Loss: 0.01429363\n",
      "Epoch: 2060/20000, Loss: 0.01419073\n",
      "Epoch: 2070/20000, Loss: 0.01408847\n",
      "Epoch: 2080/20000, Loss: 0.01398684\n",
      "Epoch: 2090/20000, Loss: 0.01388586\n",
      "Epoch: 2100/20000, Loss: 0.01378551\n",
      "Epoch: 2110/20000, Loss: 0.01368581\n",
      "Epoch: 2120/20000, Loss: 0.01358674\n",
      "Epoch: 2130/20000, Loss: 0.01348830\n",
      "Epoch: 2140/20000, Loss: 0.01339049\n",
      "Epoch: 2150/20000, Loss: 0.01329330\n",
      "Epoch: 2160/20000, Loss: 0.01319673\n",
      "Epoch: 2170/20000, Loss: 0.01310077\n",
      "Epoch: 2180/20000, Loss: 0.01300541\n",
      "Epoch: 2190/20000, Loss: 0.01291065\n",
      "Epoch: 2200/20000, Loss: 0.01281648\n",
      "Epoch: 2210/20000, Loss: 0.01272289\n",
      "Epoch: 2220/20000, Loss: 0.01262989\n",
      "Epoch: 2230/20000, Loss: 0.01253746\n",
      "Epoch: 2240/20000, Loss: 0.01244561\n",
      "Epoch: 2250/20000, Loss: 0.01235433\n",
      "Epoch: 2260/20000, Loss: 0.01226362\n",
      "Epoch: 2270/20000, Loss: 0.01217347\n",
      "Epoch: 2280/20000, Loss: 0.01208389\n",
      "Epoch: 2290/20000, Loss: 0.01199488\n",
      "Epoch: 2300/20000, Loss: 0.01190643\n",
      "Epoch: 2310/20000, Loss: 0.01181855\n",
      "Epoch: 2320/20000, Loss: 0.01173124\n",
      "Epoch: 2330/20000, Loss: 0.01164450\n",
      "Epoch: 2340/20000, Loss: 0.01155832\n",
      "Epoch: 2350/20000, Loss: 0.01147272\n",
      "Epoch: 2360/20000, Loss: 0.01138768\n",
      "Epoch: 2370/20000, Loss: 0.01130321\n",
      "Epoch: 2380/20000, Loss: 0.01121931\n",
      "Epoch: 2390/20000, Loss: 0.01113596\n",
      "Epoch: 2400/20000, Loss: 0.01105314\n",
      "Epoch: 2410/20000, Loss: 0.01097072\n",
      "Epoch: 2420/20000, Loss: 0.01088735\n",
      "Epoch: 2430/20000, Loss: 0.01069630\n",
      "Epoch: 2440/20000, Loss: 0.01052764\n",
      "Epoch: 2450/20000, Loss: 0.01041958\n",
      "Epoch: 2460/20000, Loss: 0.01031946\n",
      "Epoch: 2470/20000, Loss: 0.01015546\n",
      "Epoch: 2480/20000, Loss: 0.00998183\n",
      "Epoch: 2490/20000, Loss: 0.00986076\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 2500/20000, Loss: 0.00974930\n",
      "Epoch: 2510/20000, Loss: 0.00964159\n",
      "Epoch: 2520/20000, Loss: 0.00953633\n",
      "Epoch: 2530/20000, Loss: 0.00943316\n",
      "Epoch: 2540/20000, Loss: 0.00933190\n",
      "Epoch: 2550/20000, Loss: 0.00923243\n",
      "Epoch: 2560/20000, Loss: 0.00913468\n",
      "Epoch: 2570/20000, Loss: 0.00903856\n",
      "Epoch: 2580/20000, Loss: 0.00894401\n",
      "Epoch: 2590/20000, Loss: 0.00885097\n",
      "Epoch: 2600/20000, Loss: 0.00875939\n",
      "Epoch: 2610/20000, Loss: 0.00866921\n",
      "Epoch: 2620/20000, Loss: 0.00858038\n",
      "Epoch: 2630/20000, Loss: 0.00849283\n",
      "Epoch: 2640/20000, Loss: 0.00840644\n",
      "Epoch: 2650/20000, Loss: 0.00832027\n",
      "Epoch: 2660/20000, Loss: 0.00816669\n",
      "Epoch: 2670/20000, Loss: 0.00800053\n",
      "Epoch: 2680/20000, Loss: 0.00789688\n",
      "Epoch: 2690/20000, Loss: 0.00779982\n",
      "Epoch: 2700/20000, Loss: 0.00770650\n",
      "Epoch: 2710/20000, Loss: 0.00761563\n",
      "Epoch: 2720/20000, Loss: 0.00752678\n",
      "Epoch: 2730/20000, Loss: 0.00743972\n",
      "Epoch: 2740/20000, Loss: 0.00735434\n",
      "Epoch: 2750/20000, Loss: 0.00727056\n",
      "Epoch: 2760/20000, Loss: 0.00718828\n",
      "Epoch: 2770/20000, Loss: 0.00710744\n",
      "Epoch: 2780/20000, Loss: 0.00702795\n",
      "Epoch: 2790/20000, Loss: 0.00694975\n",
      "Epoch: 2800/20000, Loss: 0.00687276\n",
      "Epoch: 2810/20000, Loss: 0.00679693\n",
      "Epoch: 2820/20000, Loss: 0.00672220\n",
      "Epoch: 2830/20000, Loss: 0.00664852\n",
      "Epoch: 2840/20000, Loss: 0.00657585\n",
      "Epoch: 2850/20000, Loss: 0.00650418\n",
      "Epoch: 2860/20000, Loss: 0.00643344\n",
      "Epoch: 2870/20000, Loss: 0.00636347\n",
      "Epoch: 2880/20000, Loss: 0.00623772\n",
      "Epoch: 2890/20000, Loss: 0.00608773\n",
      "Epoch: 2900/20000, Loss: 0.00599908\n",
      "Epoch: 2910/20000, Loss: 0.00592017\n",
      "Epoch: 2920/20000, Loss: 0.00584478\n",
      "Epoch: 2930/20000, Loss: 0.00577131\n",
      "Epoch: 2940/20000, Loss: 0.00569944\n",
      "Epoch: 2950/20000, Loss: 0.00562893\n",
      "Epoch: 2960/20000, Loss: 0.00555922\n",
      "Epoch: 2970/20000, Loss: 0.00544978\n",
      "Epoch: 2980/20000, Loss: 0.00532400\n",
      "Epoch: 2990/20000, Loss: 0.00523958\n",
      "Epoch: 3000/20000, Loss: 0.00514822\n",
      "Epoch: 3010/20000, Loss: 0.00502737\n",
      "Epoch: 3020/20000, Loss: 0.00493249\n",
      "Epoch: 3030/20000, Loss: 0.00485031\n",
      "Epoch: 3040/20000, Loss: 0.00477066\n",
      "Epoch: 3050/20000, Loss: 0.00469324\n",
      "Epoch: 3060/20000, Loss: 0.00461790\n",
      "Epoch: 3070/20000, Loss: 0.00454442\n",
      "Epoch: 3080/20000, Loss: 0.00447275\n",
      "Epoch: 3090/20000, Loss: 0.00440284\n",
      "Epoch: 3100/20000, Loss: 0.00433465\n",
      "Epoch: 3110/20000, Loss: 0.00426812\n",
      "Epoch: 3120/20000, Loss: 0.00420320\n",
      "Epoch: 3130/20000, Loss: 0.00413984\n",
      "Epoch: 3140/20000, Loss: 0.00407799\n",
      "Epoch: 3150/20000, Loss: 0.00401758\n",
      "Epoch: 3160/20000, Loss: 0.00395858\n",
      "Epoch: 3170/20000, Loss: 0.00390092\n",
      "Epoch: 3180/20000, Loss: 0.00384456\n",
      "Epoch: 3190/20000, Loss: 0.00378944\n",
      "Epoch: 3200/20000, Loss: 0.00373553\n",
      "Epoch: 3210/20000, Loss: 0.00368277\n",
      "Epoch: 3220/20000, Loss: 0.00363114\n",
      "Epoch: 3230/20000, Loss: 0.00358058\n",
      "Epoch: 3240/20000, Loss: 0.00353107\n",
      "Epoch: 3250/20000, Loss: 0.00348257\n",
      "Epoch: 3260/20000, Loss: 0.00343505\n",
      "Epoch: 3270/20000, Loss: 0.00338847\n",
      "Epoch: 3280/20000, Loss: 0.00334281\n",
      "Epoch: 3290/20000, Loss: 0.00329803\n",
      "Epoch: 3300/20000, Loss: 0.00325412\n",
      "Epoch: 3310/20000, Loss: 0.00321104\n",
      "Epoch: 3320/20000, Loss: 0.00316876\n",
      "Epoch: 3330/20000, Loss: 0.00312727\n",
      "Epoch: 3340/20000, Loss: 0.00308654\n",
      "Epoch: 3350/20000, Loss: 0.00304654\n",
      "Epoch: 3360/20000, Loss: 0.00300726\n",
      "Epoch: 3370/20000, Loss: 0.00296868\n",
      "Epoch: 3380/20000, Loss: 0.00293077\n",
      "Epoch: 3390/20000, Loss: 0.00289353\n",
      "Epoch: 3400/20000, Loss: 0.00285692\n",
      "Epoch: 3410/20000, Loss: 0.00282094\n",
      "Epoch: 3420/20000, Loss: 0.00278557\n",
      "Epoch: 3430/20000, Loss: 0.00275079\n",
      "Epoch: 3440/20000, Loss: 0.00271660\n",
      "Epoch: 3450/20000, Loss: 0.00268297\n",
      "Epoch: 3460/20000, Loss: 0.00264990\n",
      "Epoch: 3470/20000, Loss: 0.00261737\n",
      "Epoch: 3480/20000, Loss: 0.00258538\n",
      "Epoch: 3490/20000, Loss: 0.00255391\n",
      "Epoch: 3500/20000, Loss: 0.00252295\n",
      "Epoch: 3510/20000, Loss: 0.00249249\n",
      "Epoch: 3520/20000, Loss: 0.00246252\n",
      "Epoch: 3530/20000, Loss: 0.00243303\n",
      "Epoch: 3540/20000, Loss: 0.00240401\n",
      "Epoch: 3550/20000, Loss: 0.00237545\n",
      "Epoch: 3560/20000, Loss: 0.00234735\n",
      "Epoch: 3570/20000, Loss: 0.00231968\n",
      "Epoch: 3580/20000, Loss: 0.00229246\n",
      "Epoch: 3590/20000, Loss: 0.00226566\n",
      "Epoch: 3600/20000, Loss: 0.00223927\n",
      "Epoch: 3610/20000, Loss: 0.00221330\n",
      "Epoch: 3620/20000, Loss: 0.00218772\n",
      "Epoch: 3630/20000, Loss: 0.00216254\n",
      "Epoch: 3640/20000, Loss: 0.00213774\n",
      "Epoch: 3650/20000, Loss: 0.00211332\n",
      "Epoch: 3660/20000, Loss: 0.00208927\n",
      "Epoch: 3670/20000, Loss: 0.00206558\n",
      "Epoch: 3680/20000, Loss: 0.00204224\n",
      "Epoch: 3690/20000, Loss: 0.00201925\n",
      "Epoch: 3700/20000, Loss: 0.00199660\n",
      "Epoch: 3710/20000, Loss: 0.00197428\n",
      "Epoch: 3720/20000, Loss: 0.00195229\n",
      "Epoch: 3730/20000, Loss: 0.00193061\n",
      "Epoch: 3740/20000, Loss: 0.00190925\n",
      "Epoch: 3750/20000, Loss: 0.00188819\n",
      "Epoch: 3760/20000, Loss: 0.00186744\n",
      "Epoch: 3770/20000, Loss: 0.00184697\n",
      "Epoch: 3780/20000, Loss: 0.00182680\n",
      "Epoch: 3790/20000, Loss: 0.00180690\n",
      "Epoch: 3800/20000, Loss: 0.00178729\n",
      "Epoch: 3810/20000, Loss: 0.00176794\n",
      "Epoch: 3820/20000, Loss: 0.00174886\n",
      "Epoch: 3830/20000, Loss: 0.00173005\n",
      "Epoch: 3840/20000, Loss: 0.00171149\n",
      "Epoch: 3850/20000, Loss: 0.00169319\n",
      "Epoch: 3860/20000, Loss: 0.00167513\n",
      "Epoch: 3870/20000, Loss: 0.00165732\n",
      "Epoch: 3880/20000, Loss: 0.00163975\n",
      "Epoch: 3890/20000, Loss: 0.00162242\n",
      "Epoch: 3900/20000, Loss: 0.00160532\n",
      "Epoch: 3910/20000, Loss: 0.00158845\n",
      "Epoch: 3920/20000, Loss: 0.00157180\n",
      "Epoch: 3930/20000, Loss: 0.00155538\n",
      "Epoch: 3940/20000, Loss: 0.00153917\n",
      "Epoch: 3950/20000, Loss: 0.00152317\n",
      "Epoch: 3960/20000, Loss: 0.00150739\n",
      "Epoch: 3970/20000, Loss: 0.00149181\n",
      "Epoch: 3980/20000, Loss: 0.00147644\n",
      "Epoch: 3990/20000, Loss: 0.00146127\n",
      "Epoch: 4000/20000, Loss: 0.00144629\n",
      "Epoch: 4010/20000, Loss: 0.00143151\n",
      "Epoch: 4020/20000, Loss: 0.00141692\n",
      "Epoch: 4030/20000, Loss: 0.00140251\n",
      "Epoch: 4040/20000, Loss: 0.00138829\n",
      "Epoch: 4050/20000, Loss: 0.00137425\n",
      "Epoch: 4060/20000, Loss: 0.00136039\n",
      "Epoch: 4070/20000, Loss: 0.00134670\n",
      "Epoch: 4080/20000, Loss: 0.00133318\n",
      "Epoch: 4090/20000, Loss: 0.00131983\n",
      "Epoch: 4100/20000, Loss: 0.00130664\n",
      "Epoch: 4110/20000, Loss: 0.00129362\n",
      "Epoch: 4120/20000, Loss: 0.00128076\n",
      "Epoch: 4130/20000, Loss: 0.00126805\n",
      "Epoch: 4140/20000, Loss: 0.00125550\n",
      "Epoch: 4150/20000, Loss: 0.00124310\n",
      "Epoch: 4160/20000, Loss: 0.00123086\n",
      "Epoch: 4170/20000, Loss: 0.00121875\n",
      "Epoch: 4180/20000, Loss: 0.00120680\n",
      "Epoch: 4190/20000, Loss: 0.00119498\n",
      "Epoch: 4200/20000, Loss: 0.00118331\n",
      "Epoch: 4210/20000, Loss: 0.00117177\n",
      "Epoch: 4220/20000, Loss: 0.00116038\n",
      "Epoch: 4230/20000, Loss: 0.00114911\n",
      "Epoch: 4240/20000, Loss: 0.00113798\n",
      "Epoch: 4250/20000, Loss: 0.00112698\n",
      "Epoch: 4260/20000, Loss: 0.00111611\n",
      "Epoch: 4270/20000, Loss: 0.00110536\n",
      "Epoch: 4280/20000, Loss: 0.00109474\n",
      "Epoch: 4290/20000, Loss: 0.00108424\n",
      "Epoch: 4300/20000, Loss: 0.00107387\n",
      "Epoch: 4310/20000, Loss: 0.00106361\n",
      "Epoch: 4320/20000, Loss: 0.00105347\n",
      "Epoch: 4330/20000, Loss: 0.00104345\n",
      "Epoch: 4340/20000, Loss: 0.00103355\n",
      "Epoch: 4350/20000, Loss: 0.00102376\n",
      "Epoch: 4360/20000, Loss: 0.00101408\n",
      "Epoch: 4370/20000, Loss: 0.00100451\n",
      "Epoch: 4380/20000, Loss: 0.00099505\n",
      "Epoch: 4390/20000, Loss: 0.00098569\n",
      "Epoch: 4400/20000, Loss: 0.00097645\n",
      "Epoch: 4410/20000, Loss: 0.00096730\n",
      "Epoch: 4420/20000, Loss: 0.00095826\n",
      "Epoch: 4430/20000, Loss: 0.00094933\n",
      "Epoch: 4440/20000, Loss: 0.00094049\n",
      "Epoch: 4450/20000, Loss: 0.00093175\n",
      "Epoch: 4460/20000, Loss: 0.00092311\n",
      "Epoch: 4470/20000, Loss: 0.00091457\n",
      "Epoch: 4480/20000, Loss: 0.00090612\n",
      "Epoch: 4490/20000, Loss: 0.00089777\n",
      "Epoch: 4500/20000, Loss: 0.00088951\n",
      "Epoch: 4510/20000, Loss: 0.00088134\n",
      "Epoch: 4520/20000, Loss: 0.00087326\n",
      "Epoch: 4530/20000, Loss: 0.00086527\n",
      "Epoch: 4540/20000, Loss: 0.00085737\n",
      "Epoch: 4550/20000, Loss: 0.00084955\n",
      "Epoch: 4560/20000, Loss: 0.00084182\n",
      "Epoch: 4570/20000, Loss: 0.00083418\n",
      "Epoch: 4580/20000, Loss: 0.00082661\n",
      "Epoch: 4590/20000, Loss: 0.00081913\n",
      "Epoch: 4600/20000, Loss: 0.00081174\n",
      "Epoch: 4610/20000, Loss: 0.00080442\n",
      "Epoch: 4620/20000, Loss: 0.00079718\n",
      "Epoch: 4630/20000, Loss: 0.00079001\n",
      "Epoch: 4640/20000, Loss: 0.00078293\n",
      "Epoch: 4650/20000, Loss: 0.00077592\n",
      "Epoch: 4660/20000, Loss: 0.00076899\n",
      "Epoch: 4670/20000, Loss: 0.00076213\n",
      "Epoch: 4680/20000, Loss: 0.00075534\n",
      "Epoch: 4690/20000, Loss: 0.00074862\n",
      "Epoch: 4700/20000, Loss: 0.00074198\n",
      "Epoch: 4710/20000, Loss: 0.00073540\n",
      "Epoch: 4720/20000, Loss: 0.00072889\n",
      "Epoch: 4730/20000, Loss: 0.00072245\n",
      "Epoch: 4740/20000, Loss: 0.00071608\n",
      "Epoch: 4750/20000, Loss: 0.00070978\n",
      "Epoch: 4760/20000, Loss: 0.00070354\n",
      "Epoch: 4770/20000, Loss: 0.00069736\n",
      "Epoch: 4780/20000, Loss: 0.00069125\n",
      "Epoch: 4790/20000, Loss: 0.00068519\n",
      "Epoch: 4800/20000, Loss: 0.00067920\n",
      "Epoch: 4810/20000, Loss: 0.00067327\n",
      "Epoch: 4820/20000, Loss: 0.00066740\n",
      "Epoch: 4830/20000, Loss: 0.00066159\n",
      "Epoch: 4840/20000, Loss: 0.00065583\n",
      "Epoch: 4850/20000, Loss: 0.00065012\n",
      "Epoch: 4860/20000, Loss: 0.00064447\n",
      "Epoch: 4870/20000, Loss: 0.00063887\n",
      "Epoch: 4880/20000, Loss: 0.00063332\n",
      "Epoch: 4890/20000, Loss: 0.00062782\n",
      "Epoch: 4900/20000, Loss: 0.00062238\n",
      "Epoch: 4910/20000, Loss: 0.00061698\n",
      "Epoch: 4920/20000, Loss: 0.00061163\n",
      "Epoch: 4930/20000, Loss: 0.00060633\n",
      "Epoch: 4940/20000, Loss: 0.00060107\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 4950/20000, Loss: 0.00059587\n",
      "Epoch: 4960/20000, Loss: 0.00059071\n",
      "Epoch: 4970/20000, Loss: 0.00058560\n",
      "Epoch: 4980/20000, Loss: 0.00058054\n",
      "Epoch: 4990/20000, Loss: 0.00057552\n",
      "Epoch: 5000/20000, Loss: 0.00057055\n",
      "Epoch: 5010/20000, Loss: 0.00056562\n",
      "Epoch: 5020/20000, Loss: 0.00056074\n",
      "Epoch: 5030/20000, Loss: 0.00055591\n",
      "Epoch: 5040/20000, Loss: 0.00055112\n",
      "Epoch: 5050/20000, Loss: 0.00054637\n",
      "Epoch: 5060/20000, Loss: 0.00054166\n",
      "Epoch: 5070/20000, Loss: 0.00053700\n",
      "Epoch: 5080/20000, Loss: 0.00053238\n",
      "Epoch: 5090/20000, Loss: 0.00052781\n",
      "Epoch: 5100/20000, Loss: 0.00052327\n",
      "Epoch: 5110/20000, Loss: 0.00051878\n",
      "Epoch: 5120/20000, Loss: 0.00051433\n",
      "Epoch: 5130/20000, Loss: 0.00050991\n",
      "Epoch: 5140/20000, Loss: 0.00050554\n",
      "Epoch: 5150/20000, Loss: 0.00050121\n",
      "Epoch: 5160/20000, Loss: 0.00049692\n",
      "Epoch: 5170/20000, Loss: 0.00049267\n",
      "Epoch: 5180/20000, Loss: 0.00048845\n",
      "Epoch: 5190/20000, Loss: 0.00048427\n",
      "Epoch: 5200/20000, Loss: 0.00048014\n",
      "Epoch: 5210/20000, Loss: 0.00047603\n",
      "Epoch: 5220/20000, Loss: 0.00047197\n",
      "Epoch: 5230/20000, Loss: 0.00046794\n",
      "Epoch: 5240/20000, Loss: 0.00046395\n",
      "Epoch: 5250/20000, Loss: 0.00046000\n",
      "Epoch: 5260/20000, Loss: 0.00045608\n",
      "Epoch: 5270/20000, Loss: 0.00045219\n",
      "Epoch: 5280/20000, Loss: 0.00044834\n",
      "Epoch: 5290/20000, Loss: 0.00044453\n",
      "Epoch: 5300/20000, Loss: 0.00044075\n",
      "Epoch: 5310/20000, Loss: 0.00043700\n",
      "Epoch: 5320/20000, Loss: 0.00043329\n",
      "Epoch: 5330/20000, Loss: 0.00042961\n",
      "Epoch: 5340/20000, Loss: 0.00042596\n",
      "Epoch: 5350/20000, Loss: 0.00042234\n",
      "Epoch: 5360/20000, Loss: 0.00041876\n",
      "Epoch: 5370/20000, Loss: 0.00041521\n",
      "Epoch: 5380/20000, Loss: 0.00041169\n",
      "Epoch: 5390/20000, Loss: 0.00040820\n",
      "Epoch: 5400/20000, Loss: 0.00040474\n",
      "Epoch: 5410/20000, Loss: 0.00040131\n",
      "Epoch: 5420/20000, Loss: 0.00039792\n",
      "Epoch: 5430/20000, Loss: 0.00039455\n",
      "Epoch: 5440/20000, Loss: 0.00039121\n",
      "Epoch: 5450/20000, Loss: 0.00038790\n",
      "Epoch: 5460/20000, Loss: 0.00038462\n",
      "Epoch: 5470/20000, Loss: 0.00038136\n",
      "Epoch: 5480/20000, Loss: 0.00037814\n",
      "Epoch: 5490/20000, Loss: 0.00037494\n",
      "Epoch: 5500/20000, Loss: 0.00037177\n",
      "Epoch: 5510/20000, Loss: 0.00036863\n",
      "Epoch: 5520/20000, Loss: 0.00036551\n",
      "Epoch: 5530/20000, Loss: 0.00036242\n",
      "Epoch: 5540/20000, Loss: 0.00035936\n",
      "Epoch: 5550/20000, Loss: 0.00035632\n",
      "Epoch: 5560/20000, Loss: 0.00035331\n",
      "Epoch: 5570/20000, Loss: 0.00035032\n",
      "Epoch: 5580/20000, Loss: 0.00034736\n",
      "Epoch: 5590/20000, Loss: 0.00034443\n",
      "Epoch: 5600/20000, Loss: 0.00034151\n",
      "Epoch: 5610/20000, Loss: 0.00033863\n",
      "Epoch: 5620/20000, Loss: 0.00033576\n",
      "Epoch: 5630/20000, Loss: 0.00033292\n",
      "Epoch: 5640/20000, Loss: 0.00033011\n",
      "Epoch: 5650/20000, Loss: 0.00032731\n",
      "Epoch: 5660/20000, Loss: 0.00032454\n",
      "Epoch: 5670/20000, Loss: 0.00032180\n",
      "Epoch: 5680/20000, Loss: 0.00031907\n",
      "Epoch: 5690/20000, Loss: 0.00031637\n",
      "Epoch: 5700/20000, Loss: 0.00031369\n",
      "Epoch: 5710/20000, Loss: 0.00031103\n",
      "Epoch: 5720/20000, Loss: 0.00030840\n",
      "Epoch: 5730/20000, Loss: 0.00030578\n",
      "Epoch: 5740/20000, Loss: 0.00030319\n",
      "Epoch: 5750/20000, Loss: 0.00030061\n",
      "Epoch: 5760/20000, Loss: 0.00029806\n",
      "Epoch: 5770/20000, Loss: 0.00029553\n",
      "Epoch: 5780/20000, Loss: 0.00029302\n",
      "Epoch: 5790/20000, Loss: 0.00029053\n",
      "Epoch: 5800/20000, Loss: 0.00028805\n",
      "Epoch: 5810/20000, Loss: 0.00028560\n",
      "Epoch: 5820/20000, Loss: 0.00028317\n",
      "Epoch: 5830/20000, Loss: 0.00028076\n",
      "Epoch: 5840/20000, Loss: 0.00027836\n",
      "Epoch: 5850/20000, Loss: 0.00027599\n",
      "Epoch: 5860/20000, Loss: 0.00027363\n",
      "Epoch: 5870/20000, Loss: 0.00027130\n",
      "Epoch: 5880/20000, Loss: 0.00026898\n",
      "Epoch: 5890/20000, Loss: 0.00026668\n",
      "Epoch: 5900/20000, Loss: 0.00026440\n",
      "Epoch: 5910/20000, Loss: 0.00026213\n",
      "Epoch: 5920/20000, Loss: 0.00025989\n",
      "Epoch: 5930/20000, Loss: 0.00025766\n",
      "Epoch: 5940/20000, Loss: 0.00025545\n",
      "Epoch: 5950/20000, Loss: 0.00025326\n",
      "Epoch: 5960/20000, Loss: 0.00025108\n",
      "Epoch: 5970/20000, Loss: 0.00024893\n",
      "Epoch: 5980/20000, Loss: 0.00024678\n",
      "Epoch: 5990/20000, Loss: 0.00024466\n",
      "Epoch: 6000/20000, Loss: 0.00024255\n",
      "Epoch: 6010/20000, Loss: 0.00024046\n",
      "Epoch: 6020/20000, Loss: 0.00023840\n",
      "Epoch: 6030/20000, Loss: 0.00023633\n",
      "Epoch: 6040/20000, Loss: 0.00023430\n",
      "Epoch: 6050/20000, Loss: 0.00023227\n",
      "Epoch: 6060/20000, Loss: 0.00023026\n",
      "Epoch: 6070/20000, Loss: 0.00022827\n",
      "Epoch: 6080/20000, Loss: 0.00022629\n",
      "Epoch: 6090/20000, Loss: 0.00022433\n",
      "Epoch: 6100/20000, Loss: 0.00022239\n",
      "Epoch: 6110/20000, Loss: 0.00022046\n",
      "Epoch: 6120/20000, Loss: 0.00021854\n",
      "Epoch: 6130/20000, Loss: 0.00021664\n",
      "Epoch: 6140/20000, Loss: 0.00021475\n",
      "Epoch: 6150/20000, Loss: 0.00021288\n",
      "Epoch: 6160/20000, Loss: 0.00021102\n",
      "Epoch: 6170/20000, Loss: 0.00020918\n",
      "Epoch: 6180/20000, Loss: 0.00020735\n",
      "Epoch: 6190/20000, Loss: 0.00020553\n",
      "Epoch: 6200/20000, Loss: 0.00020373\n",
      "Epoch: 6210/20000, Loss: 0.00020195\n",
      "Epoch: 6220/20000, Loss: 0.00020017\n",
      "Epoch: 6230/20000, Loss: 0.00019842\n",
      "Epoch: 6240/20000, Loss: 0.00019670\n",
      "Epoch: 6250/20000, Loss: 0.00019495\n",
      "Epoch: 6260/20000, Loss: 0.00019324\n",
      "Epoch: 6270/20000, Loss: 0.00019153\n",
      "Epoch: 6280/20000, Loss: 0.00018985\n",
      "Epoch: 6290/20000, Loss: 0.00018817\n",
      "Epoch: 6300/20000, Loss: 0.00018651\n",
      "Epoch: 6310/20000, Loss: 0.00018487\n",
      "Epoch: 6320/20000, Loss: 0.00018324\n",
      "Epoch: 6330/20000, Loss: 0.00018162\n",
      "Epoch: 6340/20000, Loss: 0.00018001\n",
      "Epoch: 6350/20000, Loss: 0.00017842\n",
      "Epoch: 6360/20000, Loss: 0.00017683\n",
      "Epoch: 6370/20000, Loss: 0.00017527\n",
      "Epoch: 6380/20000, Loss: 0.00017371\n",
      "Epoch: 6390/20000, Loss: 0.00017217\n",
      "Epoch: 6400/20000, Loss: 0.00017064\n",
      "Epoch: 6410/20000, Loss: 0.00016912\n",
      "Epoch: 6420/20000, Loss: 0.00016761\n",
      "Epoch: 6430/20000, Loss: 0.00016612\n",
      "Epoch: 6440/20000, Loss: 0.00016466\n",
      "Epoch: 6450/20000, Loss: 0.00016317\n",
      "Epoch: 6460/20000, Loss: 0.00016172\n",
      "Epoch: 6470/20000, Loss: 0.00016027\n",
      "Epoch: 6480/20000, Loss: 0.00015883\n",
      "Epoch: 6490/20000, Loss: 0.00015741\n",
      "Epoch: 6500/20000, Loss: 0.00015600\n",
      "Epoch: 6510/20000, Loss: 0.00015461\n",
      "Epoch: 6520/20000, Loss: 0.00015322\n",
      "Epoch: 6530/20000, Loss: 0.00015184\n",
      "Epoch: 6540/20000, Loss: 0.00015048\n",
      "Epoch: 6550/20000, Loss: 0.00014913\n",
      "Epoch: 6560/20000, Loss: 0.00014778\n",
      "Epoch: 6570/20000, Loss: 0.00014645\n",
      "Epoch: 6580/20000, Loss: 0.00014513\n",
      "Epoch: 6590/20000, Loss: 0.00014382\n",
      "Epoch: 6600/20000, Loss: 0.00014253\n",
      "Epoch: 6610/20000, Loss: 0.00014124\n",
      "Epoch: 6620/20000, Loss: 0.00013997\n",
      "Epoch: 6630/20000, Loss: 0.00013870\n",
      "Epoch: 6640/20000, Loss: 0.00013745\n",
      "Epoch: 6650/20000, Loss: 0.00013620\n",
      "Epoch: 6660/20000, Loss: 0.00013496\n",
      "Epoch: 6670/20000, Loss: 0.00013374\n",
      "Epoch: 6680/20000, Loss: 0.00013252\n",
      "Epoch: 6690/20000, Loss: 0.00013132\n",
      "Epoch: 6700/20000, Loss: 0.00013013\n",
      "Epoch: 6710/20000, Loss: 0.00012894\n",
      "Epoch: 6720/20000, Loss: 0.00012777\n",
      "Epoch: 6730/20000, Loss: 0.00012661\n",
      "Epoch: 6740/20000, Loss: 0.00012545\n",
      "Epoch: 6750/20000, Loss: 0.00012431\n",
      "Epoch: 6760/20000, Loss: 0.00012317\n",
      "Epoch: 6770/20000, Loss: 0.00012205\n",
      "Epoch: 6780/20000, Loss: 0.00012093\n",
      "Epoch: 6790/20000, Loss: 0.00011982\n",
      "Epoch: 6800/20000, Loss: 0.00011872\n",
      "Epoch: 6810/20000, Loss: 0.00011763\n",
      "Epoch: 6820/20000, Loss: 0.00011656\n",
      "Epoch: 6830/20000, Loss: 0.00011554\n",
      "Epoch: 6840/20000, Loss: 0.00011444\n",
      "Epoch: 6850/20000, Loss: 0.00011337\n",
      "Epoch: 6860/20000, Loss: 0.00011233\n",
      "Epoch: 6870/20000, Loss: 0.00011130\n",
      "Epoch: 6880/20000, Loss: 0.00011027\n",
      "Epoch: 6890/20000, Loss: 0.00010926\n",
      "Epoch: 6900/20000, Loss: 0.00010825\n",
      "Epoch: 6910/20000, Loss: 0.00010725\n",
      "Epoch: 6920/20000, Loss: 0.00010626\n",
      "Epoch: 6930/20000, Loss: 0.00010528\n",
      "Epoch: 6940/20000, Loss: 0.00010430\n",
      "Epoch: 6950/20000, Loss: 0.00010334\n",
      "Epoch: 6960/20000, Loss: 0.00010238\n",
      "Epoch: 6970/20000, Loss: 0.00010143\n",
      "Epoch: 6980/20000, Loss: 0.00010049\n",
      "Epoch: 6990/20000, Loss: 0.00009956\n",
      "Epoch: 7000/20000, Loss: 0.00009863\n",
      "Epoch: 7010/20000, Loss: 0.00009775\n",
      "Epoch: 7020/20000, Loss: 0.00009681\n",
      "Epoch: 7030/20000, Loss: 0.00009591\n",
      "Epoch: 7040/20000, Loss: 0.00009501\n",
      "Epoch: 7050/20000, Loss: 0.00009413\n",
      "Epoch: 7060/20000, Loss: 0.00009325\n",
      "Epoch: 7070/20000, Loss: 0.00009238\n",
      "Epoch: 7080/20000, Loss: 0.00009152\n",
      "Epoch: 7090/20000, Loss: 0.00009066\n",
      "Epoch: 7100/20000, Loss: 0.00008981\n",
      "Epoch: 7110/20000, Loss: 0.00008897\n",
      "Epoch: 7120/20000, Loss: 0.00008814\n",
      "Epoch: 7130/20000, Loss: 0.00008731\n",
      "Epoch: 7140/20000, Loss: 0.00008650\n",
      "Epoch: 7150/20000, Loss: 0.00008568\n",
      "Epoch: 7160/20000, Loss: 0.00008488\n",
      "Epoch: 7170/20000, Loss: 0.00008408\n",
      "Epoch: 7180/20000, Loss: 0.00008329\n",
      "Epoch: 7190/20000, Loss: 0.00008251\n",
      "Epoch: 7200/20000, Loss: 0.00008181\n",
      "Epoch: 7210/20000, Loss: 0.00008096\n",
      "Epoch: 7220/20000, Loss: 0.00008021\n",
      "Epoch: 7230/20000, Loss: 0.00007945\n",
      "Epoch: 7240/20000, Loss: 0.00007870\n",
      "Epoch: 7250/20000, Loss: 0.00007795\n",
      "Epoch: 7260/20000, Loss: 0.00007722\n",
      "Epoch: 7270/20000, Loss: 0.00007649\n",
      "Epoch: 7280/20000, Loss: 0.00007577\n",
      "Epoch: 7290/20000, Loss: 0.00007505\n",
      "Epoch: 7300/20000, Loss: 0.00007434\n",
      "Epoch: 7310/20000, Loss: 0.00007364\n",
      "Epoch: 7320/20000, Loss: 0.00007294\n",
      "Epoch: 7330/20000, Loss: 0.00007225\n",
      "Epoch: 7340/20000, Loss: 0.00007156\n",
      "Epoch: 7350/20000, Loss: 0.00007088\n",
      "Epoch: 7360/20000, Loss: 0.00007021\n",
      "Epoch: 7370/20000, Loss: 0.00006954\n",
      "Epoch: 7380/20000, Loss: 0.00006888\n",
      "Epoch: 7390/20000, Loss: 0.00006823\n",
      "Epoch: 7400/20000, Loss: 0.00006758\n",
      "Epoch: 7410/20000, Loss: 0.00006693\n",
      "Epoch: 7420/20000, Loss: 0.00006630\n",
      "Epoch: 7430/20000, Loss: 0.00006572\n",
      "Epoch: 7440/20000, Loss: 0.00006506\n",
      "Epoch: 7450/20000, Loss: 0.00006442\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 7460/20000, Loss: 0.00006380\n",
      "Epoch: 7470/20000, Loss: 0.00006319\n",
      "Epoch: 7480/20000, Loss: 0.00006259\n",
      "Epoch: 7490/20000, Loss: 0.00006199\n",
      "Epoch: 7500/20000, Loss: 0.00006140\n",
      "Epoch: 7510/20000, Loss: 0.00006081\n",
      "Epoch: 7520/20000, Loss: 0.00006023\n",
      "Epoch: 7530/20000, Loss: 0.00005965\n",
      "Epoch: 7540/20000, Loss: 0.00005908\n",
      "Epoch: 7550/20000, Loss: 0.00005851\n",
      "Epoch: 7560/20000, Loss: 0.00005795\n",
      "Epoch: 7570/20000, Loss: 0.00005740\n",
      "Epoch: 7580/20000, Loss: 0.00005685\n",
      "Epoch: 7590/20000, Loss: 0.00005630\n",
      "Epoch: 7600/20000, Loss: 0.00005580\n",
      "Epoch: 7610/20000, Loss: 0.00005524\n",
      "Epoch: 7620/20000, Loss: 0.00005470\n",
      "Epoch: 7630/20000, Loss: 0.00005417\n",
      "Epoch: 7640/20000, Loss: 0.00005365\n",
      "Epoch: 7650/20000, Loss: 0.00005313\n",
      "Epoch: 7660/20000, Loss: 0.00005262\n",
      "Epoch: 7670/20000, Loss: 0.00005211\n",
      "Epoch: 7680/20000, Loss: 0.00005161\n",
      "Epoch: 7690/20000, Loss: 0.00005111\n",
      "Epoch: 7700/20000, Loss: 0.00005062\n",
      "Epoch: 7710/20000, Loss: 0.00005013\n",
      "Epoch: 7720/20000, Loss: 0.00004964\n",
      "Epoch: 7730/20000, Loss: 0.00004916\n",
      "Epoch: 7740/20000, Loss: 0.00004869\n",
      "Epoch: 7750/20000, Loss: 0.00004822\n",
      "Epoch: 7760/20000, Loss: 0.00004775\n",
      "Epoch: 7770/20000, Loss: 0.00004729\n",
      "Epoch: 7780/20000, Loss: 0.00004689\n",
      "Epoch: 7790/20000, Loss: 0.00004640\n",
      "Epoch: 7800/20000, Loss: 0.00004593\n",
      "Epoch: 7810/20000, Loss: 0.00004549\n",
      "Epoch: 7820/20000, Loss: 0.00004504\n",
      "Epoch: 7830/20000, Loss: 0.00004461\n",
      "Epoch: 7840/20000, Loss: 0.00004417\n",
      "Epoch: 7850/20000, Loss: 0.00004375\n",
      "Epoch: 7860/20000, Loss: 0.00004332\n",
      "Epoch: 7870/20000, Loss: 0.00004290\n",
      "Epoch: 7880/20000, Loss: 0.00004248\n",
      "Epoch: 7890/20000, Loss: 0.00004207\n",
      "Epoch: 7900/20000, Loss: 0.00004166\n",
      "Epoch: 7910/20000, Loss: 0.00004126\n",
      "Epoch: 7920/20000, Loss: 0.00004086\n",
      "Epoch: 7930/20000, Loss: 0.00004046\n",
      "Epoch: 7940/20000, Loss: 0.00004006\n",
      "Epoch: 7950/20000, Loss: 0.00003967\n",
      "Epoch: 7960/20000, Loss: 0.00003932\n",
      "Epoch: 7970/20000, Loss: 0.00003891\n",
      "Epoch: 7980/20000, Loss: 0.00003854\n",
      "Epoch: 7990/20000, Loss: 0.00003815\n",
      "Epoch: 8000/20000, Loss: 0.00003778\n",
      "Epoch: 8010/20000, Loss: 0.00003741\n",
      "Epoch: 8020/20000, Loss: 0.00003704\n",
      "Epoch: 8030/20000, Loss: 0.00003668\n",
      "Epoch: 8040/20000, Loss: 0.00003632\n",
      "Epoch: 8050/20000, Loss: 0.00003597\n",
      "Epoch: 8060/20000, Loss: 0.00003562\n",
      "Epoch: 8070/20000, Loss: 0.00003527\n",
      "Epoch: 8080/20000, Loss: 0.00003492\n",
      "Epoch: 8090/20000, Loss: 0.00003458\n",
      "Epoch: 8100/20000, Loss: 0.00003424\n",
      "Epoch: 8110/20000, Loss: 0.00003391\n",
      "Epoch: 8120/20000, Loss: 0.00003357\n",
      "Epoch: 8130/20000, Loss: 0.00003324\n",
      "Epoch: 8140/20000, Loss: 0.00003296\n",
      "Epoch: 8150/20000, Loss: 0.00003261\n",
      "Epoch: 8160/20000, Loss: 0.00003228\n",
      "Epoch: 8170/20000, Loss: 0.00003196\n",
      "Epoch: 8180/20000, Loss: 0.00003164\n",
      "Epoch: 8190/20000, Loss: 0.00003133\n",
      "Epoch: 8200/20000, Loss: 0.00003102\n",
      "Epoch: 8210/20000, Loss: 0.00003072\n",
      "Epoch: 8220/20000, Loss: 0.00003041\n",
      "Epoch: 8230/20000, Loss: 0.00003011\n",
      "Epoch: 8240/20000, Loss: 0.00002982\n",
      "Epoch: 8250/20000, Loss: 0.00002952\n",
      "Epoch: 8260/20000, Loss: 0.00002923\n",
      "Epoch: 8270/20000, Loss: 0.00002894\n",
      "Epoch: 8280/20000, Loss: 0.00002866\n",
      "Epoch: 8290/20000, Loss: 0.00002837\n",
      "Epoch: 8300/20000, Loss: 0.00002809\n",
      "Epoch: 8310/20000, Loss: 0.00002782\n",
      "Epoch: 8320/20000, Loss: 0.00002754\n",
      "Epoch: 8330/20000, Loss: 0.00002736\n",
      "Epoch: 8340/20000, Loss: 0.00002702\n",
      "Epoch: 8350/20000, Loss: 0.00002674\n",
      "Epoch: 8360/20000, Loss: 0.00002647\n",
      "Epoch: 8370/20000, Loss: 0.00002621\n",
      "Epoch: 8380/20000, Loss: 0.00002595\n",
      "Epoch: 8390/20000, Loss: 0.00002569\n",
      "Epoch: 8400/20000, Loss: 0.00002544\n",
      "Epoch: 8410/20000, Loss: 0.00002518\n",
      "Epoch: 8420/20000, Loss: 0.00002494\n",
      "Epoch: 8430/20000, Loss: 0.00002469\n",
      "Epoch: 8440/20000, Loss: 0.00002444\n",
      "Epoch: 8450/20000, Loss: 0.00002420\n",
      "Epoch: 8460/20000, Loss: 0.00002396\n",
      "Epoch: 8470/20000, Loss: 0.00002372\n",
      "Epoch: 8480/20000, Loss: 0.00002349\n",
      "Epoch: 8490/20000, Loss: 0.00002326\n",
      "Epoch: 8500/20000, Loss: 0.00002303\n",
      "Epoch: 8510/20000, Loss: 0.00002280\n",
      "Epoch: 8520/20000, Loss: 0.00002257\n",
      "Epoch: 8530/20000, Loss: 0.00002235\n",
      "Epoch: 8540/20000, Loss: 0.00002223\n",
      "Epoch: 8550/20000, Loss: 0.00002192\n",
      "Epoch: 8560/20000, Loss: 0.00002170\n",
      "Epoch: 8570/20000, Loss: 0.00002147\n",
      "Epoch: 8580/20000, Loss: 0.00002126\n",
      "Epoch: 8590/20000, Loss: 0.00002105\n",
      "Epoch: 8600/20000, Loss: 0.00002084\n",
      "Epoch: 8610/20000, Loss: 0.00002063\n",
      "Epoch: 8620/20000, Loss: 0.00002043\n",
      "Epoch: 8630/20000, Loss: 0.00002023\n",
      "Epoch: 8640/20000, Loss: 0.00002003\n",
      "Epoch: 8650/20000, Loss: 0.00001983\n",
      "Epoch: 8660/20000, Loss: 0.00001963\n",
      "Epoch: 8670/20000, Loss: 0.00001944\n",
      "Epoch: 8680/20000, Loss: 0.00001924\n",
      "Epoch: 8690/20000, Loss: 0.00001905\n",
      "Epoch: 8700/20000, Loss: 0.00001886\n",
      "Epoch: 8710/20000, Loss: 0.00001868\n",
      "Epoch: 8720/20000, Loss: 0.00001849\n",
      "Epoch: 8730/20000, Loss: 0.00001831\n",
      "Epoch: 8740/20000, Loss: 0.00001813\n",
      "Epoch: 8750/20000, Loss: 0.00001796\n",
      "Epoch: 8760/20000, Loss: 0.00001777\n",
      "Epoch: 8770/20000, Loss: 0.00001761\n",
      "Epoch: 8780/20000, Loss: 0.00001742\n",
      "Epoch: 8790/20000, Loss: 0.00001725\n",
      "Epoch: 8800/20000, Loss: 0.00001707\n",
      "Epoch: 8810/20000, Loss: 0.00001690\n",
      "Epoch: 8820/20000, Loss: 0.00001674\n",
      "Epoch: 8830/20000, Loss: 0.00001657\n",
      "Epoch: 8840/20000, Loss: 0.00001641\n",
      "Epoch: 8850/20000, Loss: 0.00001624\n",
      "Epoch: 8860/20000, Loss: 0.00001608\n",
      "Epoch: 8870/20000, Loss: 0.00001592\n",
      "Epoch: 8880/20000, Loss: 0.00001576\n",
      "Epoch: 8890/20000, Loss: 0.00001561\n",
      "Epoch: 8900/20000, Loss: 0.00001545\n",
      "Epoch: 8910/20000, Loss: 0.00001530\n",
      "Epoch: 8920/20000, Loss: 0.00001515\n",
      "Epoch: 8930/20000, Loss: 0.00001500\n",
      "Epoch: 8940/20000, Loss: 0.00001485\n",
      "Epoch: 8950/20000, Loss: 0.00001475\n",
      "Epoch: 8960/20000, Loss: 0.00001458\n",
      "Epoch: 8970/20000, Loss: 0.00001442\n",
      "Epoch: 8980/20000, Loss: 0.00001427\n",
      "Epoch: 8990/20000, Loss: 0.00001413\n",
      "Epoch: 9000/20000, Loss: 0.00001399\n",
      "Epoch: 9010/20000, Loss: 0.00001385\n",
      "Epoch: 9020/20000, Loss: 0.00001371\n",
      "Epoch: 9030/20000, Loss: 0.00001357\n",
      "Epoch: 9040/20000, Loss: 0.00001344\n",
      "Epoch: 9050/20000, Loss: 0.00001331\n",
      "Epoch: 9060/20000, Loss: 0.00001317\n",
      "Epoch: 9070/20000, Loss: 0.00001304\n",
      "Epoch: 9080/20000, Loss: 0.00001291\n",
      "Epoch: 9090/20000, Loss: 0.00001279\n",
      "Epoch: 9100/20000, Loss: 0.00001266\n",
      "Epoch: 9110/20000, Loss: 0.00001253\n",
      "Epoch: 9120/20000, Loss: 0.00001241\n",
      "Epoch: 9130/20000, Loss: 0.00001229\n",
      "Epoch: 9140/20000, Loss: 0.00001217\n",
      "Epoch: 9150/20000, Loss: 0.00001215\n",
      "Epoch: 9160/20000, Loss: 0.00001193\n",
      "Epoch: 9170/20000, Loss: 0.00001181\n",
      "Epoch: 9180/20000, Loss: 0.00001169\n",
      "Epoch: 9190/20000, Loss: 0.00001157\n",
      "Epoch: 9200/20000, Loss: 0.00001146\n",
      "Epoch: 9210/20000, Loss: 0.00001134\n",
      "Epoch: 9220/20000, Loss: 0.00001123\n",
      "Epoch: 9230/20000, Loss: 0.00001112\n",
      "Epoch: 9240/20000, Loss: 0.00001101\n",
      "Epoch: 9250/20000, Loss: 0.00001090\n",
      "Epoch: 9260/20000, Loss: 0.00001079\n",
      "Epoch: 9270/20000, Loss: 0.00001068\n",
      "Epoch: 9280/20000, Loss: 0.00001058\n",
      "Epoch: 9290/20000, Loss: 0.00001047\n",
      "Epoch: 9300/20000, Loss: 0.00001037\n",
      "Epoch: 9310/20000, Loss: 0.00001026\n",
      "Epoch: 9320/20000, Loss: 0.00001016\n",
      "Epoch: 9330/20000, Loss: 0.00001006\n",
      "Epoch: 9340/20000, Loss: 0.00000996\n",
      "Epoch: 9350/20000, Loss: 0.00000990\n",
      "Epoch: 9360/20000, Loss: 0.00000980\n",
      "Epoch: 9370/20000, Loss: 0.00000967\n",
      "Epoch: 9380/20000, Loss: 0.00000957\n",
      "Epoch: 9390/20000, Loss: 0.00000947\n",
      "Epoch: 9400/20000, Loss: 0.00000938\n",
      "Epoch: 9410/20000, Loss: 0.00000929\n",
      "Epoch: 9420/20000, Loss: 0.00000919\n",
      "Epoch: 9430/20000, Loss: 0.00000910\n",
      "Epoch: 9440/20000, Loss: 0.00000901\n",
      "Epoch: 9450/20000, Loss: 0.00000892\n",
      "Epoch: 9460/20000, Loss: 0.00000884\n",
      "Epoch: 9470/20000, Loss: 0.00000880\n",
      "Epoch: 9480/20000, Loss: 0.00000867\n",
      "Epoch: 9490/20000, Loss: 0.00000857\n",
      "Epoch: 9500/20000, Loss: 0.00000849\n",
      "Epoch: 9510/20000, Loss: 0.00000840\n",
      "Epoch: 9520/20000, Loss: 0.00000832\n",
      "Epoch: 9530/20000, Loss: 0.00000824\n",
      "Epoch: 9540/20000, Loss: 0.00000816\n",
      "Epoch: 9550/20000, Loss: 0.00000807\n",
      "Epoch: 9560/20000, Loss: 0.00000799\n",
      "Epoch: 9570/20000, Loss: 0.00000791\n",
      "Epoch: 9580/20000, Loss: 0.00000783\n",
      "Epoch: 9590/20000, Loss: 0.00000776\n",
      "Epoch: 9600/20000, Loss: 0.00000772\n",
      "Epoch: 9610/20000, Loss: 0.00000761\n",
      "Epoch: 9620/20000, Loss: 0.00000753\n",
      "Epoch: 9630/20000, Loss: 0.00000745\n",
      "Epoch: 9640/20000, Loss: 0.00000738\n",
      "Epoch: 9650/20000, Loss: 0.00000730\n",
      "Epoch: 9660/20000, Loss: 0.00000723\n",
      "Epoch: 9670/20000, Loss: 0.00000715\n",
      "Epoch: 9680/20000, Loss: 0.00000708\n",
      "Epoch: 9690/20000, Loss: 0.00000701\n",
      "Epoch: 9700/20000, Loss: 0.00000694\n",
      "Epoch: 9710/20000, Loss: 0.00000687\n",
      "Epoch: 9720/20000, Loss: 0.00000680\n",
      "Epoch: 9730/20000, Loss: 0.00000674\n",
      "Epoch: 9740/20000, Loss: 0.00000672\n",
      "Epoch: 9750/20000, Loss: 0.00000660\n",
      "Epoch: 9760/20000, Loss: 0.00000654\n",
      "Epoch: 9770/20000, Loss: 0.00000647\n",
      "Epoch: 9780/20000, Loss: 0.00000640\n",
      "Epoch: 9790/20000, Loss: 0.00000635\n",
      "Epoch: 9800/20000, Loss: 0.00000627\n",
      "Epoch: 9810/20000, Loss: 0.00000621\n",
      "Epoch: 9820/20000, Loss: 0.00000615\n",
      "Epoch: 9830/20000, Loss: 0.00000609\n",
      "Epoch: 9840/20000, Loss: 0.00000602\n",
      "Epoch: 9850/20000, Loss: 0.00000597\n",
      "Epoch: 9860/20000, Loss: 0.00000592\n",
      "Epoch: 9870/20000, Loss: 0.00000585\n",
      "Epoch: 9880/20000, Loss: 0.00000579\n",
      "Epoch: 9890/20000, Loss: 0.00000573\n",
      "Epoch: 9900/20000, Loss: 0.00000567\n",
      "Epoch: 9910/20000, Loss: 0.00000561\n",
      "Epoch: 9920/20000, Loss: 0.00000558\n",
      "Epoch: 9930/20000, Loss: 0.00000550\n",
      "Epoch: 9940/20000, Loss: 0.00000545\n",
      "Epoch: 9950/20000, Loss: 0.00000539\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 9960/20000, Loss: 0.00000533\n",
      "Epoch: 9970/20000, Loss: 0.00000528\n",
      "Epoch: 9980/20000, Loss: 0.00000522\n",
      "Epoch: 9990/20000, Loss: 0.00000518\n",
      "Epoch: 10000/20000, Loss: 0.00000518\n",
      "Epoch: 10010/20000, Loss: 0.00000508\n",
      "Epoch: 10020/20000, Loss: 0.00000502\n",
      "Epoch: 10030/20000, Loss: 0.00000496\n",
      "Epoch: 10040/20000, Loss: 0.00000491\n",
      "Epoch: 10050/20000, Loss: 0.00000486\n",
      "Epoch: 10060/20000, Loss: 0.00000481\n",
      "Epoch: 10070/20000, Loss: 0.00000476\n",
      "Epoch: 10080/20000, Loss: 0.00000471\n",
      "Epoch: 10090/20000, Loss: 0.00000466\n",
      "Epoch: 10100/20000, Loss: 0.00000462\n",
      "Epoch: 10110/20000, Loss: 0.00000464\n",
      "Epoch: 10120/20000, Loss: 0.00000454\n",
      "Epoch: 10130/20000, Loss: 0.00000449\n",
      "Epoch: 10140/20000, Loss: 0.00000443\n",
      "Epoch: 10150/20000, Loss: 0.00000438\n",
      "Epoch: 10160/20000, Loss: 0.00000434\n",
      "Epoch: 10170/20000, Loss: 0.00000429\n",
      "Epoch: 10180/20000, Loss: 0.00000425\n",
      "Epoch: 10190/20000, Loss: 0.00000421\n",
      "Epoch: 10200/20000, Loss: 0.00000416\n",
      "Epoch: 10210/20000, Loss: 0.00000412\n",
      "Epoch: 10220/20000, Loss: 0.00000408\n",
      "Epoch: 10230/20000, Loss: 0.00000404\n",
      "Epoch: 10240/20000, Loss: 0.00000402\n",
      "Epoch: 10250/20000, Loss: 0.00000398\n",
      "Epoch: 10260/20000, Loss: 0.00000392\n",
      "Epoch: 10270/20000, Loss: 0.00000388\n",
      "Epoch: 10280/20000, Loss: 0.00000383\n",
      "Epoch: 10290/20000, Loss: 0.00000379\n",
      "Epoch: 10300/20000, Loss: 0.00000376\n",
      "Epoch: 10310/20000, Loss: 0.00000372\n",
      "Epoch: 10320/20000, Loss: 0.00000370\n",
      "Epoch: 10330/20000, Loss: 0.00000364\n",
      "Epoch: 10340/20000, Loss: 0.00000361\n",
      "Epoch: 10350/20000, Loss: 0.00000357\n",
      "Epoch: 10360/20000, Loss: 0.00000353\n",
      "Epoch: 10370/20000, Loss: 0.00000349\n",
      "Epoch: 10380/20000, Loss: 0.00000346\n",
      "Epoch: 10390/20000, Loss: 0.00000343\n",
      "Epoch: 10400/20000, Loss: 0.00000344\n",
      "Epoch: 10410/20000, Loss: 0.00000336\n",
      "Epoch: 10420/20000, Loss: 0.00000332\n",
      "Epoch: 10430/20000, Loss: 0.00000329\n",
      "Epoch: 10440/20000, Loss: 0.00000325\n",
      "Epoch: 10450/20000, Loss: 0.00000322\n",
      "Epoch: 10460/20000, Loss: 0.00000319\n",
      "Epoch: 10470/20000, Loss: 0.00000315\n",
      "Epoch: 10480/20000, Loss: 0.00000312\n",
      "Epoch: 10490/20000, Loss: 0.00000309\n",
      "Epoch: 10500/20000, Loss: 0.00000306\n",
      "Epoch: 10510/20000, Loss: 0.00000303\n",
      "Epoch: 10520/20000, Loss: 0.00000302\n",
      "Epoch: 10530/20000, Loss: 0.00000302\n",
      "Epoch: 10540/20000, Loss: 0.00000295\n",
      "Epoch: 10550/20000, Loss: 0.00000291\n",
      "Epoch: 10560/20000, Loss: 0.00000288\n",
      "Epoch: 10570/20000, Loss: 0.00000285\n",
      "Epoch: 10580/20000, Loss: 0.00000282\n",
      "Epoch: 10590/20000, Loss: 0.00000279\n",
      "Epoch: 10600/20000, Loss: 0.00000276\n",
      "Epoch: 10610/20000, Loss: 0.00000274\n",
      "Epoch: 10620/20000, Loss: 0.00000271\n",
      "Epoch: 10630/20000, Loss: 0.00000268\n",
      "Epoch: 10640/20000, Loss: 0.00000265\n",
      "Epoch: 10650/20000, Loss: 0.00000263\n",
      "Epoch: 10660/20000, Loss: 0.00000260\n",
      "Epoch: 10670/20000, Loss: 0.00000258\n",
      "Epoch: 10680/20000, Loss: 0.00000257\n",
      "Epoch: 10690/20000, Loss: 0.00000255\n",
      "Epoch: 10700/20000, Loss: 0.00000253\n",
      "Epoch: 10710/20000, Loss: 0.00000248\n",
      "Epoch: 10720/20000, Loss: 0.00000245\n",
      "Epoch: 10730/20000, Loss: 0.00000243\n",
      "Epoch: 10740/20000, Loss: 0.00000240\n",
      "Epoch: 10750/20000, Loss: 0.00000238\n",
      "Epoch: 10760/20000, Loss: 0.00000236\n",
      "Epoch: 10770/20000, Loss: 0.00000233\n",
      "Epoch: 10780/20000, Loss: 0.00000231\n",
      "Epoch: 10790/20000, Loss: 0.00000229\n",
      "Epoch: 10800/20000, Loss: 0.00000226\n",
      "Epoch: 10810/20000, Loss: 0.00000224\n",
      "Epoch: 10820/20000, Loss: 0.00000222\n",
      "Epoch: 10830/20000, Loss: 0.00000220\n",
      "Epoch: 10840/20000, Loss: 0.00000218\n",
      "Epoch: 10850/20000, Loss: 0.00000216\n",
      "Epoch: 10860/20000, Loss: 0.00000214\n",
      "Epoch: 10870/20000, Loss: 0.00000212\n",
      "Epoch: 10880/20000, Loss: 0.00000214\n",
      "Epoch: 10890/20000, Loss: 0.00000209\n",
      "Epoch: 10900/20000, Loss: 0.00000208\n",
      "Epoch: 10910/20000, Loss: 0.00000204\n",
      "Epoch: 10920/20000, Loss: 0.00000202\n",
      "Epoch: 10930/20000, Loss: 0.00000200\n",
      "Epoch: 10940/20000, Loss: 0.00000198\n",
      "Epoch: 10950/20000, Loss: 0.00000196\n",
      "Epoch: 10960/20000, Loss: 0.00000194\n",
      "Epoch: 10970/20000, Loss: 0.00000192\n",
      "Epoch: 10980/20000, Loss: 0.00000190\n",
      "Epoch: 10990/20000, Loss: 0.00000188\n",
      "Epoch: 11000/20000, Loss: 0.00000187\n",
      "Epoch: 11010/20000, Loss: 0.00000185\n",
      "Epoch: 11020/20000, Loss: 0.00000185\n",
      "Epoch: 11030/20000, Loss: 0.00000185\n",
      "Epoch: 11040/20000, Loss: 0.00000180\n",
      "Epoch: 11050/20000, Loss: 0.00000179\n",
      "Epoch: 11060/20000, Loss: 0.00000177\n",
      "Epoch: 11070/20000, Loss: 0.00000175\n",
      "Epoch: 11080/20000, Loss: 0.00000174\n",
      "Epoch: 11090/20000, Loss: 0.00000171\n",
      "Epoch: 11100/20000, Loss: 0.00000170\n",
      "Epoch: 11110/20000, Loss: 0.00000168\n",
      "Epoch: 11120/20000, Loss: 0.00000167\n",
      "Epoch: 11130/20000, Loss: 0.00000165\n",
      "Epoch: 11140/20000, Loss: 0.00000165\n",
      "Epoch: 11150/20000, Loss: 0.00000163\n",
      "Epoch: 11160/20000, Loss: 0.00000161\n",
      "Epoch: 11170/20000, Loss: 0.00000160\n",
      "Epoch: 11180/20000, Loss: 0.00000158\n",
      "Epoch: 11190/20000, Loss: 0.00000158\n",
      "Epoch: 11200/20000, Loss: 0.00000156\n",
      "Epoch: 11210/20000, Loss: 0.00000154\n",
      "Epoch: 11220/20000, Loss: 0.00000152\n",
      "Epoch: 11230/20000, Loss: 0.00000151\n",
      "Epoch: 11240/20000, Loss: 0.00000150\n",
      "Epoch: 11250/20000, Loss: 0.00000151\n",
      "Epoch: 11260/20000, Loss: 0.00000147\n",
      "Epoch: 11270/20000, Loss: 0.00000147\n",
      "Epoch: 11280/20000, Loss: 0.00000144\n",
      "Epoch: 11290/20000, Loss: 0.00000143\n",
      "Epoch: 11300/20000, Loss: 0.00000142\n",
      "Epoch: 11310/20000, Loss: 0.00000140\n",
      "Epoch: 11320/20000, Loss: 0.00000139\n",
      "Epoch: 11330/20000, Loss: 0.00000141\n",
      "Epoch: 11340/20000, Loss: 0.00000138\n",
      "Epoch: 11350/20000, Loss: 0.00000136\n",
      "Epoch: 11360/20000, Loss: 0.00000134\n",
      "Epoch: 11370/20000, Loss: 0.00000133\n",
      "Epoch: 11380/20000, Loss: 0.00000132\n",
      "Epoch: 11390/20000, Loss: 0.00000130\n",
      "Epoch: 11400/20000, Loss: 0.00000129\n",
      "Epoch: 11410/20000, Loss: 0.00000128\n",
      "Epoch: 11420/20000, Loss: 0.00000128\n",
      "Epoch: 11430/20000, Loss: 0.00000132\n",
      "Epoch: 11440/20000, Loss: 0.00000126\n",
      "Epoch: 11450/20000, Loss: 0.00000124\n",
      "Epoch: 11460/20000, Loss: 0.00000123\n",
      "Epoch: 11470/20000, Loss: 0.00000122\n",
      "Epoch: 11480/20000, Loss: 0.00000121\n",
      "Epoch: 11490/20000, Loss: 0.00000120\n",
      "Epoch: 11500/20000, Loss: 0.00000118\n",
      "Epoch: 11510/20000, Loss: 0.00000118\n",
      "Epoch: 11520/20000, Loss: 0.00000120\n",
      "Epoch: 11530/20000, Loss: 0.00000116\n",
      "Epoch: 11540/20000, Loss: 0.00000115\n",
      "Epoch: 11550/20000, Loss: 0.00000114\n",
      "Epoch: 11560/20000, Loss: 0.00000113\n",
      "Epoch: 11570/20000, Loss: 0.00000114\n",
      "Epoch: 11580/20000, Loss: 0.00000111\n",
      "Epoch: 11590/20000, Loss: 0.00000110\n",
      "Epoch: 11600/20000, Loss: 0.00000109\n",
      "Epoch: 11610/20000, Loss: 0.00000108\n",
      "Epoch: 11620/20000, Loss: 0.00000107\n",
      "Epoch: 11630/20000, Loss: 0.00000107\n",
      "Epoch: 11640/20000, Loss: 0.00000108\n",
      "Epoch: 11650/20000, Loss: 0.00000106\n",
      "Epoch: 11660/20000, Loss: 0.00000104\n",
      "Epoch: 11670/20000, Loss: 0.00000103\n",
      "Epoch: 11680/20000, Loss: 0.00000102\n",
      "Epoch: 11690/20000, Loss: 0.00000101\n",
      "Epoch: 11700/20000, Loss: 0.00000100\n",
      "Epoch: 11710/20000, Loss: 0.00000100\n",
      "Epoch: 11720/20000, Loss: 0.00000103\n",
      "Epoch: 11730/20000, Loss: 0.00000098\n",
      "Epoch: 11740/20000, Loss: 0.00000097\n",
      "Epoch: 11750/20000, Loss: 0.00000096\n",
      "Epoch: 11760/20000, Loss: 0.00000095\n",
      "Epoch: 11770/20000, Loss: 0.00000094\n",
      "Epoch: 11780/20000, Loss: 0.00000093\n",
      "Epoch: 11790/20000, Loss: 0.00000093\n",
      "Epoch: 11800/20000, Loss: 0.00000093\n",
      "Epoch: 11810/20000, Loss: 0.00000097\n",
      "Epoch: 11820/20000, Loss: 0.00000093\n",
      "Epoch: 11830/20000, Loss: 0.00000091\n",
      "Epoch: 11840/20000, Loss: 0.00000089\n",
      "Epoch: 11850/20000, Loss: 0.00000088\n",
      "Epoch: 11860/20000, Loss: 0.00000088\n",
      "Epoch: 11870/20000, Loss: 0.00000087\n",
      "Epoch: 11880/20000, Loss: 0.00000086\n",
      "Epoch: 11890/20000, Loss: 0.00000085\n",
      "Epoch: 11900/20000, Loss: 0.00000085\n",
      "Epoch: 11910/20000, Loss: 0.00000084\n",
      "Epoch: 11920/20000, Loss: 0.00000085\n",
      "Epoch: 11930/20000, Loss: 0.00000091\n",
      "Epoch: 11940/20000, Loss: 0.00000083\n",
      "Epoch: 11950/20000, Loss: 0.00000082\n",
      "Epoch: 11960/20000, Loss: 0.00000081\n",
      "Epoch: 11970/20000, Loss: 0.00000080\n",
      "Epoch: 11980/20000, Loss: 0.00000079\n",
      "Epoch: 11990/20000, Loss: 0.00000079\n",
      "Epoch: 12000/20000, Loss: 0.00000078\n",
      "Epoch: 12010/20000, Loss: 0.00000077\n",
      "Epoch: 12020/20000, Loss: 0.00000077\n",
      "Epoch: 12030/20000, Loss: 0.00000077\n",
      "Epoch: 12040/20000, Loss: 0.00000086\n",
      "Epoch: 12050/20000, Loss: 0.00000075\n",
      "Epoch: 12060/20000, Loss: 0.00000075\n",
      "Epoch: 12070/20000, Loss: 0.00000074\n",
      "Epoch: 12080/20000, Loss: 0.00000073\n",
      "Epoch: 12090/20000, Loss: 0.00000073\n",
      "Epoch: 12100/20000, Loss: 0.00000072\n",
      "Epoch: 12110/20000, Loss: 0.00000072\n",
      "Epoch: 12120/20000, Loss: 0.00000076\n",
      "Epoch: 12130/20000, Loss: 0.00000073\n",
      "Epoch: 12140/20000, Loss: 0.00000070\n",
      "Epoch: 12150/20000, Loss: 0.00000069\n",
      "Epoch: 12160/20000, Loss: 0.00000069\n",
      "Epoch: 12170/20000, Loss: 0.00000068\n",
      "Epoch: 12180/20000, Loss: 0.00000068\n",
      "Epoch: 12190/20000, Loss: 0.00000067\n",
      "Epoch: 12200/20000, Loss: 0.00000067\n",
      "Epoch: 12210/20000, Loss: 0.00000066\n",
      "Epoch: 12220/20000, Loss: 0.00000066\n",
      "Epoch: 12230/20000, Loss: 0.00000076\n",
      "Epoch: 12240/20000, Loss: 0.00000067\n",
      "Epoch: 12250/20000, Loss: 0.00000065\n",
      "Epoch: 12260/20000, Loss: 0.00000064\n",
      "Epoch: 12270/20000, Loss: 0.00000063\n",
      "Epoch: 12280/20000, Loss: 0.00000063\n",
      "Epoch: 12290/20000, Loss: 0.00000063\n",
      "Epoch: 12300/20000, Loss: 0.00000063\n",
      "Epoch: 12310/20000, Loss: 0.00000062\n",
      "Epoch: 12320/20000, Loss: 0.00000061\n",
      "Epoch: 12330/20000, Loss: 0.00000060\n",
      "Epoch: 12340/20000, Loss: 0.00000060\n",
      "Epoch: 12350/20000, Loss: 0.00000060\n",
      "Epoch: 12360/20000, Loss: 0.00000059\n",
      "Epoch: 12370/20000, Loss: 0.00000060\n",
      "Epoch: 12380/20000, Loss: 0.00000061\n",
      "Epoch: 12390/20000, Loss: 0.00000059\n",
      "Epoch: 12400/20000, Loss: 0.00000058\n",
      "Epoch: 12410/20000, Loss: 0.00000057\n",
      "Epoch: 12420/20000, Loss: 0.00000057\n",
      "Epoch: 12430/20000, Loss: 0.00000056\n",
      "Epoch: 12440/20000, Loss: 0.00000056\n",
      "Epoch: 12450/20000, Loss: 0.00000056\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 12460/20000, Loss: 0.00000060\n",
      "Epoch: 12470/20000, Loss: 0.00000058\n",
      "Epoch: 12480/20000, Loss: 0.00000055\n",
      "Epoch: 12490/20000, Loss: 0.00000054\n",
      "Epoch: 12500/20000, Loss: 0.00000053\n",
      "Epoch: 12510/20000, Loss: 0.00000053\n",
      "Epoch: 12520/20000, Loss: 0.00000053\n",
      "Epoch: 12530/20000, Loss: 0.00000052\n",
      "Epoch: 12540/20000, Loss: 0.00000052\n",
      "Epoch: 12550/20000, Loss: 0.00000051\n",
      "Epoch: 12560/20000, Loss: 0.00000051\n",
      "Epoch: 12570/20000, Loss: 0.00000054\n",
      "Epoch: 12580/20000, Loss: 0.00000053\n",
      "Epoch: 12590/20000, Loss: 0.00000052\n",
      "Epoch: 12600/20000, Loss: 0.00000050\n",
      "Epoch: 12610/20000, Loss: 0.00000049\n",
      "Epoch: 12620/20000, Loss: 0.00000049\n",
      "Epoch: 12630/20000, Loss: 0.00000049\n",
      "Epoch: 12640/20000, Loss: 0.00000048\n",
      "Epoch: 12650/20000, Loss: 0.00000048\n",
      "Epoch: 12660/20000, Loss: 0.00000047\n",
      "Epoch: 12670/20000, Loss: 0.00000047\n",
      "Epoch: 12680/20000, Loss: 0.00000047\n",
      "Epoch: 12690/20000, Loss: 0.00000052\n",
      "Epoch: 12700/20000, Loss: 0.00000049\n",
      "Epoch: 12710/20000, Loss: 0.00000047\n",
      "Epoch: 12720/20000, Loss: 0.00000046\n",
      "Epoch: 12730/20000, Loss: 0.00000046\n",
      "Epoch: 12740/20000, Loss: 0.00000047\n",
      "Epoch: 12750/20000, Loss: 0.00000045\n",
      "Epoch: 12760/20000, Loss: 0.00000045\n",
      "Epoch: 12770/20000, Loss: 0.00000044\n",
      "Epoch: 12780/20000, Loss: 0.00000044\n",
      "Epoch: 12790/20000, Loss: 0.00000043\n",
      "Epoch: 12800/20000, Loss: 0.00000043\n",
      "Epoch: 12810/20000, Loss: 0.00000043\n",
      "Epoch: 12820/20000, Loss: 0.00000049\n",
      "Epoch: 12830/20000, Loss: 0.00000047\n",
      "Epoch: 12840/20000, Loss: 0.00000043\n",
      "Epoch: 12850/20000, Loss: 0.00000042\n",
      "Epoch: 12860/20000, Loss: 0.00000041\n",
      "Epoch: 12870/20000, Loss: 0.00000041\n",
      "Epoch: 12880/20000, Loss: 0.00000041\n",
      "Epoch: 12890/20000, Loss: 0.00000040\n",
      "Epoch: 12900/20000, Loss: 0.00000040\n",
      "Epoch: 12910/20000, Loss: 0.00000040\n",
      "Epoch: 12920/20000, Loss: 0.00000040\n",
      "Epoch: 12930/20000, Loss: 0.00000039\n",
      "Epoch: 12940/20000, Loss: 0.00000039\n",
      "Epoch: 12950/20000, Loss: 0.00000047\n",
      "Epoch: 12960/20000, Loss: 0.00000040\n",
      "Epoch: 12970/20000, Loss: 0.00000041\n",
      "Epoch: 12980/20000, Loss: 0.00000038\n",
      "Epoch: 12990/20000, Loss: 0.00000038\n",
      "Epoch: 13000/20000, Loss: 0.00000038\n",
      "Epoch: 13010/20000, Loss: 0.00000037\n",
      "Epoch: 13020/20000, Loss: 0.00000037\n",
      "Epoch: 13030/20000, Loss: 0.00000037\n",
      "Epoch: 13040/20000, Loss: 0.00000037\n",
      "Epoch: 13050/20000, Loss: 0.00000036\n",
      "Epoch: 13060/20000, Loss: 0.00000036\n",
      "Epoch: 13070/20000, Loss: 0.00000036\n",
      "Epoch: 13080/20000, Loss: 0.00000036\n",
      "Epoch: 13090/20000, Loss: 0.00000035\n",
      "Epoch: 13100/20000, Loss: 0.00000035\n",
      "Epoch: 13110/20000, Loss: 0.00000044\n",
      "Epoch: 13120/20000, Loss: 0.00000040\n",
      "Epoch: 13130/20000, Loss: 0.00000036\n",
      "Epoch: 13140/20000, Loss: 0.00000035\n",
      "Epoch: 13150/20000, Loss: 0.00000034\n",
      "Epoch: 13160/20000, Loss: 0.00000034\n",
      "Epoch: 13170/20000, Loss: 0.00000034\n",
      "Epoch: 13180/20000, Loss: 0.00000033\n",
      "Epoch: 13190/20000, Loss: 0.00000033\n",
      "Epoch: 13200/20000, Loss: 0.00000033\n",
      "Epoch: 13210/20000, Loss: 0.00000033\n",
      "Epoch: 13220/20000, Loss: 0.00000032\n",
      "Epoch: 13230/20000, Loss: 0.00000032\n",
      "Epoch: 13240/20000, Loss: 0.00000032\n",
      "Epoch: 13250/20000, Loss: 0.00000032\n",
      "Epoch: 13260/20000, Loss: 0.00000032\n",
      "Epoch: 13270/20000, Loss: 0.00000040\n",
      "Epoch: 13280/20000, Loss: 0.00000036\n",
      "Epoch: 13290/20000, Loss: 0.00000032\n",
      "Epoch: 13300/20000, Loss: 0.00000031\n",
      "Epoch: 13310/20000, Loss: 0.00000031\n",
      "Epoch: 13320/20000, Loss: 0.00000030\n",
      "Epoch: 13330/20000, Loss: 0.00000030\n",
      "Epoch: 13340/20000, Loss: 0.00000030\n",
      "Epoch: 13350/20000, Loss: 0.00000032\n",
      "Epoch: 13360/20000, Loss: 0.00000030\n",
      "Epoch: 13370/20000, Loss: 0.00000030\n",
      "Epoch: 13380/20000, Loss: 0.00000030\n",
      "Epoch: 13390/20000, Loss: 0.00000029\n",
      "Epoch: 13400/20000, Loss: 0.00000029\n",
      "Epoch: 13410/20000, Loss: 0.00000029\n",
      "Epoch: 13420/20000, Loss: 0.00000029\n",
      "Epoch: 13430/20000, Loss: 0.00000028\n",
      "Epoch: 13440/20000, Loss: 0.00000029\n",
      "Epoch: 13450/20000, Loss: 0.00000041\n",
      "Epoch: 13460/20000, Loss: 0.00000032\n",
      "Epoch: 13470/20000, Loss: 0.00000029\n",
      "Epoch: 13480/20000, Loss: 0.00000028\n",
      "Epoch: 13490/20000, Loss: 0.00000027\n",
      "Epoch: 13500/20000, Loss: 0.00000027\n",
      "Epoch: 13510/20000, Loss: 0.00000027\n",
      "Epoch: 13520/20000, Loss: 0.00000027\n",
      "Epoch: 13530/20000, Loss: 0.00000027\n",
      "Epoch: 13540/20000, Loss: 0.00000027\n",
      "Epoch: 13550/20000, Loss: 0.00000026\n",
      "Epoch: 13560/20000, Loss: 0.00000026\n",
      "Epoch: 13570/20000, Loss: 0.00000026\n",
      "Epoch: 13580/20000, Loss: 0.00000029\n",
      "Epoch: 13590/20000, Loss: 0.00000029\n",
      "Epoch: 13600/20000, Loss: 0.00000028\n",
      "Epoch: 13610/20000, Loss: 0.00000026\n",
      "Epoch: 13620/20000, Loss: 0.00000026\n",
      "Epoch: 13630/20000, Loss: 0.00000025\n",
      "Epoch: 13640/20000, Loss: 0.00000025\n",
      "Epoch: 13650/20000, Loss: 0.00000025\n",
      "Epoch: 13660/20000, Loss: 0.00000025\n",
      "Epoch: 13670/20000, Loss: 0.00000025\n",
      "Epoch: 13680/20000, Loss: 0.00000024\n",
      "Epoch: 13690/20000, Loss: 0.00000024\n",
      "Epoch: 13700/20000, Loss: 0.00000024\n",
      "Epoch: 13710/20000, Loss: 0.00000027\n",
      "Epoch: 13720/20000, Loss: 0.00000024\n",
      "Epoch: 13730/20000, Loss: 0.00000025\n",
      "Epoch: 13740/20000, Loss: 0.00000024\n",
      "Epoch: 13750/20000, Loss: 0.00000023\n",
      "Epoch: 13760/20000, Loss: 0.00000023\n",
      "Epoch: 13770/20000, Loss: 0.00000023\n",
      "Epoch: 13780/20000, Loss: 0.00000023\n",
      "Epoch: 13790/20000, Loss: 0.00000025\n",
      "Epoch: 13800/20000, Loss: 0.00000024\n",
      "Epoch: 13810/20000, Loss: 0.00000025\n",
      "Epoch: 13820/20000, Loss: 0.00000022\n",
      "Epoch: 13830/20000, Loss: 0.00000023\n",
      "Epoch: 13840/20000, Loss: 0.00000022\n",
      "Epoch: 13850/20000, Loss: 0.00000022\n",
      "Epoch: 13860/20000, Loss: 0.00000024\n",
      "Epoch: 13870/20000, Loss: 0.00000023\n",
      "Epoch: 13880/20000, Loss: 0.00000022\n",
      "Epoch: 13890/20000, Loss: 0.00000022\n",
      "Epoch: 13900/20000, Loss: 0.00000022\n",
      "Epoch: 13910/20000, Loss: 0.00000021\n",
      "Epoch: 13920/20000, Loss: 0.00000021\n",
      "Epoch: 13930/20000, Loss: 0.00000021\n",
      "Epoch: 13940/20000, Loss: 0.00000021\n",
      "Epoch: 13950/20000, Loss: 0.00000021\n",
      "Epoch: 13960/20000, Loss: 0.00000021\n",
      "Epoch: 13970/20000, Loss: 0.00000021\n",
      "Epoch: 13980/20000, Loss: 0.00000020\n",
      "Epoch: 13990/20000, Loss: 0.00000020\n",
      "Epoch: 14000/20000, Loss: 0.00000022\n",
      "Epoch: 14010/20000, Loss: 0.00000037\n",
      "Epoch: 14020/20000, Loss: 0.00000023\n",
      "Epoch: 14030/20000, Loss: 0.00000022\n",
      "Epoch: 14040/20000, Loss: 0.00000020\n",
      "Epoch: 14050/20000, Loss: 0.00000020\n",
      "Epoch: 14060/20000, Loss: 0.00000020\n",
      "Epoch: 14070/20000, Loss: 0.00000019\n",
      "Epoch: 14080/20000, Loss: 0.00000019\n",
      "Epoch: 14090/20000, Loss: 0.00000019\n",
      "Epoch: 14100/20000, Loss: 0.00000019\n",
      "Epoch: 14110/20000, Loss: 0.00000019\n",
      "Epoch: 14120/20000, Loss: 0.00000019\n",
      "Epoch: 14130/20000, Loss: 0.00000019\n",
      "Epoch: 14140/20000, Loss: 0.00000019\n",
      "Epoch: 14150/20000, Loss: 0.00000019\n",
      "Epoch: 14160/20000, Loss: 0.00000018\n",
      "Epoch: 14170/20000, Loss: 0.00000018\n",
      "Epoch: 14180/20000, Loss: 0.00000018\n",
      "Epoch: 14190/20000, Loss: 0.00000023\n",
      "Epoch: 14200/20000, Loss: 0.00000018\n",
      "Epoch: 14210/20000, Loss: 0.00000023\n",
      "Epoch: 14220/20000, Loss: 0.00000018\n",
      "Epoch: 14230/20000, Loss: 0.00000018\n",
      "Epoch: 14240/20000, Loss: 0.00000018\n",
      "Epoch: 14250/20000, Loss: 0.00000018\n",
      "Epoch: 14260/20000, Loss: 0.00000018\n",
      "Epoch: 14270/20000, Loss: 0.00000017\n",
      "Epoch: 14280/20000, Loss: 0.00000017\n",
      "Epoch: 14290/20000, Loss: 0.00000017\n",
      "Epoch: 14300/20000, Loss: 0.00000017\n",
      "Epoch: 14310/20000, Loss: 0.00000017\n",
      "Epoch: 14320/20000, Loss: 0.00000017\n",
      "Epoch: 14330/20000, Loss: 0.00000017\n",
      "Epoch: 14340/20000, Loss: 0.00000017\n",
      "Epoch: 14350/20000, Loss: 0.00000017\n",
      "Epoch: 14360/20000, Loss: 0.00000017\n",
      "Epoch: 14370/20000, Loss: 0.00000017\n",
      "Epoch: 14380/20000, Loss: 0.00000033\n",
      "Epoch: 14390/20000, Loss: 0.00000027\n",
      "Epoch: 14400/20000, Loss: 0.00000019\n",
      "Epoch: 14410/20000, Loss: 0.00000017\n",
      "Epoch: 14420/20000, Loss: 0.00000016\n",
      "Epoch: 14430/20000, Loss: 0.00000016\n",
      "Epoch: 14440/20000, Loss: 0.00000016\n",
      "Epoch: 14450/20000, Loss: 0.00000016\n",
      "Epoch: 14460/20000, Loss: 0.00000016\n",
      "Epoch: 14470/20000, Loss: 0.00000016\n",
      "Epoch: 14480/20000, Loss: 0.00000016\n",
      "Epoch: 14490/20000, Loss: 0.00000016\n",
      "Epoch: 14500/20000, Loss: 0.00000015\n",
      "Epoch: 14510/20000, Loss: 0.00000015\n",
      "Epoch: 14520/20000, Loss: 0.00000015\n",
      "Epoch: 14530/20000, Loss: 0.00000015\n",
      "Epoch: 14540/20000, Loss: 0.00000015\n",
      "Epoch: 14550/20000, Loss: 0.00000015\n",
      "Epoch: 14560/20000, Loss: 0.00000015\n",
      "Epoch: 14570/20000, Loss: 0.00000015\n",
      "Epoch: 14580/20000, Loss: 0.00000015\n",
      "Epoch: 14590/20000, Loss: 0.00000015\n",
      "Epoch: 14600/20000, Loss: 0.00000030\n",
      "Epoch: 14610/20000, Loss: 0.00000021\n",
      "Epoch: 14620/20000, Loss: 0.00000021\n",
      "Epoch: 14630/20000, Loss: 0.00000016\n",
      "Epoch: 14640/20000, Loss: 0.00000015\n",
      "Epoch: 14650/20000, Loss: 0.00000015\n",
      "Epoch: 14660/20000, Loss: 0.00000014\n",
      "Epoch: 14670/20000, Loss: 0.00000014\n",
      "Epoch: 14680/20000, Loss: 0.00000014\n",
      "Epoch: 14690/20000, Loss: 0.00000014\n",
      "Epoch: 14700/20000, Loss: 0.00000014\n",
      "Epoch: 14710/20000, Loss: 0.00000014\n",
      "Epoch: 14720/20000, Loss: 0.00000014\n",
      "Epoch: 14730/20000, Loss: 0.00000015\n",
      "Epoch: 14740/20000, Loss: 0.00000022\n",
      "Epoch: 14750/20000, Loss: 0.00000015\n",
      "Epoch: 14760/20000, Loss: 0.00000014\n",
      "Epoch: 14770/20000, Loss: 0.00000014\n",
      "Epoch: 14780/20000, Loss: 0.00000014\n",
      "Epoch: 14790/20000, Loss: 0.00000013\n",
      "Epoch: 14800/20000, Loss: 0.00000013\n",
      "Epoch: 14810/20000, Loss: 0.00000013\n",
      "Epoch: 14820/20000, Loss: 0.00000015\n",
      "Epoch: 14830/20000, Loss: 0.00000018\n",
      "Epoch: 14840/20000, Loss: 0.00000013\n",
      "Epoch: 14850/20000, Loss: 0.00000014\n",
      "Epoch: 14860/20000, Loss: 0.00000013\n",
      "Epoch: 14870/20000, Loss: 0.00000013\n",
      "Epoch: 14880/20000, Loss: 0.00000013\n",
      "Epoch: 14890/20000, Loss: 0.00000014\n",
      "Epoch: 14900/20000, Loss: 0.00000019\n",
      "Epoch: 14910/20000, Loss: 0.00000014\n",
      "Epoch: 14920/20000, Loss: 0.00000013\n",
      "Epoch: 14930/20000, Loss: 0.00000013\n",
      "Epoch: 14940/20000, Loss: 0.00000012\n",
      "Epoch: 14950/20000, Loss: 0.00000012\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 14960/20000, Loss: 0.00000012\n",
      "Epoch: 14970/20000, Loss: 0.00000012\n",
      "Epoch: 14980/20000, Loss: 0.00000012\n",
      "Epoch: 14990/20000, Loss: 0.00000016\n",
      "Epoch: 15000/20000, Loss: 0.00000012\n",
      "Epoch: 15010/20000, Loss: 0.00000013\n",
      "Epoch: 15020/20000, Loss: 0.00000013\n",
      "Epoch: 15030/20000, Loss: 0.00000013\n",
      "Epoch: 15040/20000, Loss: 0.00000015\n",
      "Epoch: 15050/20000, Loss: 0.00000012\n",
      "Epoch: 15060/20000, Loss: 0.00000012\n",
      "Epoch: 15070/20000, Loss: 0.00000012\n",
      "Epoch: 15080/20000, Loss: 0.00000012\n",
      "Epoch: 15090/20000, Loss: 0.00000012\n",
      "Epoch: 15100/20000, Loss: 0.00000012\n",
      "Epoch: 15110/20000, Loss: 0.00000014\n",
      "Epoch: 15120/20000, Loss: 0.00000014\n",
      "Epoch: 15130/20000, Loss: 0.00000014\n",
      "Epoch: 15140/20000, Loss: 0.00000013\n",
      "Epoch: 15150/20000, Loss: 0.00000012\n",
      "Epoch: 15160/20000, Loss: 0.00000012\n",
      "Epoch: 15170/20000, Loss: 0.00000012\n",
      "Epoch: 15180/20000, Loss: 0.00000013\n",
      "Epoch: 15190/20000, Loss: 0.00000012\n",
      "Epoch: 15200/20000, Loss: 0.00000012\n",
      "Epoch: 15210/20000, Loss: 0.00000012\n",
      "Epoch: 15220/20000, Loss: 0.00000012\n",
      "Epoch: 15230/20000, Loss: 0.00000011\n",
      "Epoch: 15240/20000, Loss: 0.00000012\n",
      "Epoch: 15250/20000, Loss: 0.00000020\n",
      "Epoch: 15260/20000, Loss: 0.00000013\n",
      "Epoch: 15270/20000, Loss: 0.00000011\n",
      "Epoch: 15280/20000, Loss: 0.00000011\n",
      "Epoch: 15290/20000, Loss: 0.00000011\n",
      "Epoch: 15300/20000, Loss: 0.00000012\n",
      "Epoch: 15310/20000, Loss: 0.00000011\n",
      "Epoch: 15320/20000, Loss: 0.00000011\n",
      "Epoch: 15330/20000, Loss: 0.00000011\n",
      "Epoch: 15340/20000, Loss: 0.00000010\n",
      "Epoch: 15350/20000, Loss: 0.00000011\n",
      "Epoch: 15360/20000, Loss: 0.00000012\n",
      "Epoch: 15370/20000, Loss: 0.00000012\n",
      "Epoch: 15380/20000, Loss: 0.00000014\n",
      "Epoch: 15390/20000, Loss: 0.00000013\n",
      "Epoch: 15400/20000, Loss: 0.00000011\n",
      "Epoch: 15410/20000, Loss: 0.00000011\n",
      "Epoch: 15420/20000, Loss: 0.00000010\n",
      "Epoch: 15430/20000, Loss: 0.00000010\n",
      "Epoch: 15440/20000, Loss: 0.00000010\n",
      "Epoch: 15450/20000, Loss: 0.00000010\n",
      "Epoch: 15460/20000, Loss: 0.00000010\n",
      "Epoch: 15470/20000, Loss: 0.00000012\n",
      "Epoch: 15480/20000, Loss: 0.00000014\n",
      "Epoch: 15490/20000, Loss: 0.00000013\n",
      "Epoch: 15500/20000, Loss: 0.00000012\n",
      "Epoch: 15510/20000, Loss: 0.00000011\n",
      "Epoch: 15520/20000, Loss: 0.00000010\n",
      "Epoch: 15530/20000, Loss: 0.00000010\n",
      "Epoch: 15540/20000, Loss: 0.00000010\n",
      "Epoch: 15550/20000, Loss: 0.00000010\n",
      "Epoch: 15560/20000, Loss: 0.00000009\n",
      "Epoch: 15570/20000, Loss: 0.00000009\n",
      "Epoch: 15580/20000, Loss: 0.00000009\n",
      "Epoch: 15590/20000, Loss: 0.00000010\n",
      "Epoch: 15600/20000, Loss: 0.00000018\n",
      "Epoch: 15610/20000, Loss: 0.00000018\n",
      "Epoch: 15620/20000, Loss: 0.00000012\n",
      "Epoch: 15630/20000, Loss: 0.00000010\n",
      "Epoch: 15640/20000, Loss: 0.00000009\n",
      "Epoch: 15650/20000, Loss: 0.00000009\n",
      "Epoch: 15660/20000, Loss: 0.00000009\n",
      "Epoch: 15670/20000, Loss: 0.00000009\n",
      "Epoch: 15680/20000, Loss: 0.00000009\n",
      "Epoch: 15690/20000, Loss: 0.00000009\n",
      "Epoch: 15700/20000, Loss: 0.00000009\n",
      "Epoch: 15710/20000, Loss: 0.00000009\n",
      "Epoch: 15720/20000, Loss: 0.00000009\n",
      "Epoch: 15730/20000, Loss: 0.00000010\n",
      "Epoch: 15740/20000, Loss: 0.00000030\n",
      "Epoch: 15750/20000, Loss: 0.00000017\n",
      "Epoch: 15760/20000, Loss: 0.00000009\n",
      "Epoch: 15770/20000, Loss: 0.00000009\n",
      "Epoch: 15780/20000, Loss: 0.00000009\n",
      "Epoch: 15790/20000, Loss: 0.00000009\n",
      "Epoch: 15800/20000, Loss: 0.00000009\n",
      "Epoch: 15810/20000, Loss: 0.00000009\n",
      "Epoch: 15820/20000, Loss: 0.00000009\n",
      "Epoch: 15830/20000, Loss: 0.00000008\n",
      "Epoch: 15840/20000, Loss: 0.00000008\n",
      "Epoch: 15850/20000, Loss: 0.00000008\n",
      "Epoch: 15860/20000, Loss: 0.00000008\n",
      "Epoch: 15870/20000, Loss: 0.00000008\n",
      "Epoch: 15880/20000, Loss: 0.00000008\n",
      "Epoch: 15890/20000, Loss: 0.00000008\n",
      "Epoch: 15900/20000, Loss: 0.00000009\n",
      "Epoch: 15910/20000, Loss: 0.00000026\n",
      "Epoch: 15920/20000, Loss: 0.00000027\n",
      "Epoch: 15930/20000, Loss: 0.00000014\n",
      "Epoch: 15940/20000, Loss: 0.00000009\n",
      "Epoch: 15950/20000, Loss: 0.00000009\n",
      "Epoch: 15960/20000, Loss: 0.00000008\n",
      "Epoch: 15970/20000, Loss: 0.00000008\n",
      "Epoch: 15980/20000, Loss: 0.00000008\n",
      "Epoch: 15990/20000, Loss: 0.00000008\n",
      "Epoch: 16000/20000, Loss: 0.00000008\n",
      "Epoch: 16010/20000, Loss: 0.00000008\n",
      "Epoch: 16020/20000, Loss: 0.00000008\n",
      "Epoch: 16030/20000, Loss: 0.00000008\n",
      "Epoch: 16040/20000, Loss: 0.00000008\n",
      "Epoch: 16050/20000, Loss: 0.00000008\n",
      "Epoch: 16060/20000, Loss: 0.00000008\n",
      "Epoch: 16070/20000, Loss: 0.00000008\n",
      "Epoch: 16080/20000, Loss: 0.00000008\n",
      "Epoch: 16090/20000, Loss: 0.00000008\n",
      "Epoch: 16100/20000, Loss: 0.00000008\n",
      "Epoch: 16110/20000, Loss: 0.00000008\n",
      "Epoch: 16120/20000, Loss: 0.00000008\n",
      "Epoch: 16130/20000, Loss: 0.00000024\n",
      "Epoch: 16140/20000, Loss: 0.00000015\n",
      "Epoch: 16150/20000, Loss: 0.00000008\n",
      "Epoch: 16160/20000, Loss: 0.00000009\n",
      "Epoch: 16170/20000, Loss: 0.00000007\n",
      "Epoch: 16180/20000, Loss: 0.00000008\n",
      "Epoch: 16190/20000, Loss: 0.00000008\n",
      "Epoch: 16200/20000, Loss: 0.00000009\n",
      "Epoch: 16210/20000, Loss: 0.00000009\n",
      "Epoch: 16220/20000, Loss: 0.00000008\n",
      "Epoch: 16230/20000, Loss: 0.00000007\n",
      "Epoch: 16240/20000, Loss: 0.00000007\n",
      "Epoch: 16250/20000, Loss: 0.00000007\n",
      "Epoch: 16260/20000, Loss: 0.00000007\n",
      "Epoch: 16270/20000, Loss: 0.00000008\n",
      "Epoch: 16280/20000, Loss: 0.00000011\n",
      "Epoch: 16290/20000, Loss: 0.00000008\n",
      "Epoch: 16300/20000, Loss: 0.00000008\n",
      "Epoch: 16310/20000, Loss: 0.00000007\n",
      "Epoch: 16320/20000, Loss: 0.00000007\n",
      "Epoch: 16330/20000, Loss: 0.00000007\n",
      "Epoch: 16340/20000, Loss: 0.00000012\n",
      "Epoch: 16350/20000, Loss: 0.00000008\n",
      "Epoch: 16360/20000, Loss: 0.00000007\n",
      "Epoch: 16370/20000, Loss: 0.00000007\n",
      "Epoch: 16380/20000, Loss: 0.00000007\n",
      "Epoch: 16390/20000, Loss: 0.00000007\n",
      "Epoch: 16400/20000, Loss: 0.00000009\n",
      "Epoch: 16410/20000, Loss: 0.00000009\n",
      "Epoch: 16420/20000, Loss: 0.00000008\n",
      "Epoch: 16430/20000, Loss: 0.00000007\n",
      "Epoch: 16440/20000, Loss: 0.00000007\n",
      "Epoch: 16450/20000, Loss: 0.00000007\n",
      "Epoch: 16460/20000, Loss: 0.00000007\n",
      "Epoch: 16470/20000, Loss: 0.00000009\n",
      "Epoch: 16480/20000, Loss: 0.00000015\n",
      "Epoch: 16490/20000, Loss: 0.00000008\n",
      "Epoch: 16500/20000, Loss: 0.00000007\n",
      "Epoch: 16510/20000, Loss: 0.00000007\n",
      "Epoch: 16520/20000, Loss: 0.00000007\n",
      "Epoch: 16530/20000, Loss: 0.00000007\n",
      "Epoch: 16540/20000, Loss: 0.00000007\n",
      "Epoch: 16550/20000, Loss: 0.00000010\n",
      "Epoch: 16560/20000, Loss: 0.00000007\n",
      "Epoch: 16570/20000, Loss: 0.00000007\n",
      "Epoch: 16580/20000, Loss: 0.00000007\n",
      "Epoch: 16590/20000, Loss: 0.00000006\n",
      "Epoch: 16600/20000, Loss: 0.00000007\n",
      "Epoch: 16610/20000, Loss: 0.00000007\n",
      "Epoch: 16620/20000, Loss: 0.00000013\n",
      "Epoch: 16630/20000, Loss: 0.00000013\n",
      "Epoch: 16640/20000, Loss: 0.00000009\n",
      "Epoch: 16650/20000, Loss: 0.00000007\n",
      "Epoch: 16660/20000, Loss: 0.00000007\n",
      "Epoch: 16670/20000, Loss: 0.00000006\n",
      "Epoch: 16680/20000, Loss: 0.00000006\n",
      "Epoch: 16690/20000, Loss: 0.00000006\n",
      "Epoch: 16700/20000, Loss: 0.00000006\n",
      "Epoch: 16710/20000, Loss: 0.00000008\n",
      "Epoch: 16720/20000, Loss: 0.00000017\n",
      "Epoch: 16730/20000, Loss: 0.00000009\n",
      "Epoch: 16740/20000, Loss: 0.00000007\n",
      "Epoch: 16750/20000, Loss: 0.00000006\n",
      "Epoch: 16760/20000, Loss: 0.00000006\n",
      "Epoch: 16770/20000, Loss: 0.00000006\n",
      "Epoch: 16780/20000, Loss: 0.00000006\n",
      "Epoch: 16790/20000, Loss: 0.00000006\n",
      "Epoch: 16800/20000, Loss: 0.00000013\n",
      "Epoch: 16810/20000, Loss: 0.00000007\n",
      "Epoch: 16820/20000, Loss: 0.00000007\n",
      "Epoch: 16830/20000, Loss: 0.00000006\n",
      "Epoch: 16840/20000, Loss: 0.00000006\n",
      "Epoch: 16850/20000, Loss: 0.00000006\n",
      "Epoch: 16860/20000, Loss: 0.00000007\n",
      "Epoch: 16870/20000, Loss: 0.00000015\n",
      "Epoch: 16880/20000, Loss: 0.00000009\n",
      "Epoch: 16890/20000, Loss: 0.00000007\n",
      "Epoch: 16900/20000, Loss: 0.00000006\n",
      "Epoch: 16910/20000, Loss: 0.00000006\n",
      "Epoch: 16920/20000, Loss: 0.00000006\n",
      "Epoch: 16930/20000, Loss: 0.00000006\n",
      "Epoch: 16940/20000, Loss: 0.00000016\n",
      "Epoch: 16950/20000, Loss: 0.00000010\n",
      "Epoch: 16960/20000, Loss: 0.00000007\n",
      "Epoch: 16970/20000, Loss: 0.00000006\n",
      "Epoch: 16980/20000, Loss: 0.00000006\n",
      "Epoch: 16990/20000, Loss: 0.00000006\n",
      "Epoch: 17000/20000, Loss: 0.00000006\n",
      "Epoch: 17010/20000, Loss: 0.00000013\n",
      "Epoch: 17020/20000, Loss: 0.00000006\n",
      "Epoch: 17030/20000, Loss: 0.00000006\n",
      "Epoch: 17040/20000, Loss: 0.00000006\n",
      "Epoch: 17050/20000, Loss: 0.00000006\n",
      "Epoch: 17060/20000, Loss: 0.00000006\n",
      "Epoch: 17070/20000, Loss: 0.00000006\n",
      "Epoch: 17080/20000, Loss: 0.00000006\n",
      "Epoch: 17090/20000, Loss: 0.00000006\n",
      "Epoch: 17100/20000, Loss: 0.00000008\n",
      "Epoch: 17110/20000, Loss: 0.00000011\n",
      "Epoch: 17120/20000, Loss: 0.00000006\n",
      "Epoch: 17130/20000, Loss: 0.00000006\n",
      "Epoch: 17140/20000, Loss: 0.00000005\n",
      "Epoch: 17150/20000, Loss: 0.00000005\n",
      "Epoch: 17160/20000, Loss: 0.00000005\n",
      "Epoch: 17170/20000, Loss: 0.00000006\n",
      "Epoch: 17180/20000, Loss: 0.00000015\n",
      "Epoch: 17190/20000, Loss: 0.00000008\n",
      "Epoch: 17200/20000, Loss: 0.00000007\n",
      "Epoch: 17210/20000, Loss: 0.00000006\n",
      "Epoch: 17220/20000, Loss: 0.00000006\n",
      "Epoch: 17230/20000, Loss: 0.00000005\n",
      "Epoch: 17240/20000, Loss: 0.00000006\n",
      "Epoch: 17250/20000, Loss: 0.00000011\n",
      "Epoch: 17260/20000, Loss: 0.00000006\n",
      "Epoch: 17270/20000, Loss: 0.00000005\n",
      "Epoch: 17280/20000, Loss: 0.00000005\n",
      "Epoch: 17290/20000, Loss: 0.00000005\n",
      "Epoch: 17300/20000, Loss: 0.00000005\n",
      "Epoch: 17310/20000, Loss: 0.00000007\n",
      "Epoch: 17320/20000, Loss: 0.00000014\n",
      "Epoch: 17330/20000, Loss: 0.00000008\n",
      "Epoch: 17340/20000, Loss: 0.00000006\n",
      "Epoch: 17350/20000, Loss: 0.00000005\n",
      "Epoch: 17360/20000, Loss: 0.00000005\n",
      "Epoch: 17370/20000, Loss: 0.00000005\n",
      "Epoch: 17380/20000, Loss: 0.00000006\n",
      "Epoch: 17390/20000, Loss: 0.00000009\n",
      "Epoch: 17400/20000, Loss: 0.00000006\n",
      "Epoch: 17410/20000, Loss: 0.00000005\n",
      "Epoch: 17420/20000, Loss: 0.00000005\n",
      "Epoch: 17430/20000, Loss: 0.00000006\n",
      "Epoch: 17440/20000, Loss: 0.00000012\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 17450/20000, Loss: 0.00000006\n",
      "Epoch: 17460/20000, Loss: 0.00000005\n",
      "Epoch: 17470/20000, Loss: 0.00000005\n",
      "Epoch: 17480/20000, Loss: 0.00000005\n",
      "Epoch: 17490/20000, Loss: 0.00000006\n",
      "Epoch: 17500/20000, Loss: 0.00000007\n",
      "Epoch: 17510/20000, Loss: 0.00000005\n",
      "Epoch: 17520/20000, Loss: 0.00000005\n",
      "Epoch: 17530/20000, Loss: 0.00000005\n",
      "Epoch: 17540/20000, Loss: 0.00000005\n",
      "Epoch: 17550/20000, Loss: 0.00000012\n",
      "Epoch: 17560/20000, Loss: 0.00000010\n",
      "Epoch: 17570/20000, Loss: 0.00000006\n",
      "Epoch: 17580/20000, Loss: 0.00000005\n",
      "Epoch: 17590/20000, Loss: 0.00000005\n",
      "Epoch: 17600/20000, Loss: 0.00000005\n",
      "Epoch: 17610/20000, Loss: 0.00000005\n",
      "Epoch: 17620/20000, Loss: 0.00000005\n",
      "Epoch: 17630/20000, Loss: 0.00000005\n",
      "Epoch: 17640/20000, Loss: 0.00000005\n",
      "Epoch: 17650/20000, Loss: 0.00000005\n",
      "Epoch: 17660/20000, Loss: 0.00000013\n",
      "Epoch: 17670/20000, Loss: 0.00000013\n",
      "Epoch: 17680/20000, Loss: 0.00000008\n",
      "Epoch: 17690/20000, Loss: 0.00000005\n",
      "Epoch: 17700/20000, Loss: 0.00000005\n",
      "Epoch: 17710/20000, Loss: 0.00000005\n",
      "Epoch: 17720/20000, Loss: 0.00000005\n",
      "Epoch: 17730/20000, Loss: 0.00000005\n",
      "Epoch: 17740/20000, Loss: 0.00000005\n",
      "Epoch: 17750/20000, Loss: 0.00000005\n",
      "Epoch: 17760/20000, Loss: 0.00000005\n",
      "Epoch: 17770/20000, Loss: 0.00000009\n",
      "Epoch: 17780/20000, Loss: 0.00000005\n",
      "Epoch: 17790/20000, Loss: 0.00000005\n",
      "Epoch: 17800/20000, Loss: 0.00000005\n",
      "Epoch: 17810/20000, Loss: 0.00000005\n",
      "Epoch: 17820/20000, Loss: 0.00000005\n",
      "Epoch: 17830/20000, Loss: 0.00000005\n",
      "Epoch: 17840/20000, Loss: 0.00000006\n",
      "Epoch: 17850/20000, Loss: 0.00000010\n",
      "Epoch: 17860/20000, Loss: 0.00000006\n",
      "Epoch: 17870/20000, Loss: 0.00000005\n",
      "Epoch: 17880/20000, Loss: 0.00000005\n",
      "Epoch: 17890/20000, Loss: 0.00000004\n",
      "Epoch: 17900/20000, Loss: 0.00000005\n",
      "Epoch: 17910/20000, Loss: 0.00000009\n",
      "Epoch: 17920/20000, Loss: 0.00000007\n",
      "Epoch: 17930/20000, Loss: 0.00000005\n",
      "Epoch: 17940/20000, Loss: 0.00000005\n",
      "Epoch: 17950/20000, Loss: 0.00000004\n",
      "Epoch: 17960/20000, Loss: 0.00000004\n",
      "Epoch: 17970/20000, Loss: 0.00000005\n",
      "Epoch: 17980/20000, Loss: 0.00000008\n",
      "Epoch: 17990/20000, Loss: 0.00000005\n",
      "Epoch: 18000/20000, Loss: 0.00000005\n",
      "Epoch: 18010/20000, Loss: 0.00000005\n",
      "Epoch: 18020/20000, Loss: 0.00000005\n",
      "Epoch: 18030/20000, Loss: 0.00000005\n",
      "Epoch: 18040/20000, Loss: 0.00000008\n",
      "Epoch: 18050/20000, Loss: 0.00000006\n",
      "Epoch: 18060/20000, Loss: 0.00000005\n",
      "Epoch: 18070/20000, Loss: 0.00000005\n",
      "Epoch: 18080/20000, Loss: 0.00000005\n",
      "Epoch: 18090/20000, Loss: 0.00000006\n",
      "Epoch: 18100/20000, Loss: 0.00000008\n",
      "Epoch: 18110/20000, Loss: 0.00000005\n",
      "Epoch: 18120/20000, Loss: 0.00000004\n",
      "Epoch: 18130/20000, Loss: 0.00000004\n",
      "Epoch: 18140/20000, Loss: 0.00000004\n",
      "Epoch: 18150/20000, Loss: 0.00000009\n",
      "Epoch: 18160/20000, Loss: 0.00000006\n",
      "Epoch: 18170/20000, Loss: 0.00000005\n",
      "Epoch: 18180/20000, Loss: 0.00000004\n",
      "Epoch: 18190/20000, Loss: 0.00000004\n",
      "Epoch: 18200/20000, Loss: 0.00000004\n",
      "Epoch: 18210/20000, Loss: 0.00000004\n",
      "Epoch: 18220/20000, Loss: 0.00000004\n",
      "Epoch: 18230/20000, Loss: 0.00000008\n",
      "Epoch: 18240/20000, Loss: 0.00000006\n",
      "Epoch: 18250/20000, Loss: 0.00000005\n",
      "Epoch: 18260/20000, Loss: 0.00000005\n",
      "Epoch: 18270/20000, Loss: 0.00000004\n",
      "Epoch: 18280/20000, Loss: 0.00000004\n",
      "Epoch: 18290/20000, Loss: 0.00000006\n",
      "Epoch: 18300/20000, Loss: 0.00000008\n",
      "Epoch: 18310/20000, Loss: 0.00000005\n",
      "Epoch: 18320/20000, Loss: 0.00000004\n",
      "Epoch: 18330/20000, Loss: 0.00000004\n",
      "Epoch: 18340/20000, Loss: 0.00000004\n",
      "Epoch: 18350/20000, Loss: 0.00000004\n",
      "Epoch: 18360/20000, Loss: 0.00000004\n",
      "Epoch: 18370/20000, Loss: 0.00000006\n",
      "Epoch: 18380/20000, Loss: 0.00000012\n",
      "Epoch: 18390/20000, Loss: 0.00000006\n",
      "Epoch: 18400/20000, Loss: 0.00000005\n",
      "Epoch: 18410/20000, Loss: 0.00000004\n",
      "Epoch: 18420/20000, Loss: 0.00000004\n",
      "Epoch: 18430/20000, Loss: 0.00000004\n",
      "Epoch: 18440/20000, Loss: 0.00000004\n",
      "Epoch: 18450/20000, Loss: 0.00000004\n",
      "Epoch: 18460/20000, Loss: 0.00000009\n",
      "Epoch: 18470/20000, Loss: 0.00000005\n",
      "Epoch: 18480/20000, Loss: 0.00000007\n",
      "Epoch: 18490/20000, Loss: 0.00000004\n",
      "Epoch: 18500/20000, Loss: 0.00000004\n",
      "Epoch: 18510/20000, Loss: 0.00000004\n",
      "Epoch: 18520/20000, Loss: 0.00000004\n",
      "Epoch: 18530/20000, Loss: 0.00000004\n",
      "Epoch: 18540/20000, Loss: 0.00000006\n",
      "Epoch: 18550/20000, Loss: 0.00000007\n",
      "Epoch: 18560/20000, Loss: 0.00000007\n",
      "Epoch: 18570/20000, Loss: 0.00000004\n",
      "Epoch: 18580/20000, Loss: 0.00000004\n",
      "Epoch: 18590/20000, Loss: 0.00000004\n",
      "Epoch: 18600/20000, Loss: 0.00000004\n",
      "Epoch: 18610/20000, Loss: 0.00000004\n",
      "Epoch: 18620/20000, Loss: 0.00000008\n",
      "Epoch: 18630/20000, Loss: 0.00000014\n",
      "Epoch: 18640/20000, Loss: 0.00000008\n",
      "Epoch: 18650/20000, Loss: 0.00000005\n",
      "Epoch: 18660/20000, Loss: 0.00000004\n",
      "Epoch: 18670/20000, Loss: 0.00000004\n",
      "Epoch: 18680/20000, Loss: 0.00000004\n",
      "Epoch: 18690/20000, Loss: 0.00000004\n",
      "Epoch: 18700/20000, Loss: 0.00000004\n",
      "Epoch: 18710/20000, Loss: 0.00000005\n",
      "Epoch: 18720/20000, Loss: 0.00000013\n",
      "Epoch: 18730/20000, Loss: 0.00000006\n",
      "Epoch: 18740/20000, Loss: 0.00000005\n",
      "Epoch: 18750/20000, Loss: 0.00000004\n",
      "Epoch: 18760/20000, Loss: 0.00000004\n",
      "Epoch: 18770/20000, Loss: 0.00000004\n",
      "Epoch: 18780/20000, Loss: 0.00000004\n",
      "Epoch: 18790/20000, Loss: 0.00000014\n",
      "Epoch: 18800/20000, Loss: 0.00000007\n",
      "Epoch: 18810/20000, Loss: 0.00000005\n",
      "Epoch: 18820/20000, Loss: 0.00000004\n",
      "Epoch: 18830/20000, Loss: 0.00000004\n",
      "Epoch: 18840/20000, Loss: 0.00000004\n",
      "Epoch: 18850/20000, Loss: 0.00000004\n",
      "Epoch: 18860/20000, Loss: 0.00000013\n",
      "Epoch: 18870/20000, Loss: 0.00000006\n",
      "Epoch: 18880/20000, Loss: 0.00000005\n",
      "Epoch: 18890/20000, Loss: 0.00000004\n",
      "Epoch: 18900/20000, Loss: 0.00000004\n",
      "Epoch: 18910/20000, Loss: 0.00000004\n",
      "Epoch: 18920/20000, Loss: 0.00000003\n",
      "Epoch: 18930/20000, Loss: 0.00000004\n",
      "Epoch: 18940/20000, Loss: 0.00000009\n",
      "Epoch: 18950/20000, Loss: 0.00000005\n",
      "Epoch: 18960/20000, Loss: 0.00000005\n",
      "Epoch: 18970/20000, Loss: 0.00000004\n",
      "Epoch: 18980/20000, Loss: 0.00000004\n",
      "Epoch: 18990/20000, Loss: 0.00000004\n",
      "Epoch: 19000/20000, Loss: 0.00000004\n",
      "Epoch: 19010/20000, Loss: 0.00000006\n",
      "Epoch: 19020/20000, Loss: 0.00000007\n",
      "Epoch: 19030/20000, Loss: 0.00000005\n",
      "Epoch: 19040/20000, Loss: 0.00000004\n",
      "Epoch: 19050/20000, Loss: 0.00000004\n",
      "Epoch: 19060/20000, Loss: 0.00000003\n",
      "Epoch: 19070/20000, Loss: 0.00000003\n",
      "Epoch: 19080/20000, Loss: 0.00000004\n",
      "Epoch: 19090/20000, Loss: 0.00000006\n",
      "Epoch: 19100/20000, Loss: 0.00000013\n",
      "Epoch: 19110/20000, Loss: 0.00000006\n",
      "Epoch: 19120/20000, Loss: 0.00000004\n",
      "Epoch: 19130/20000, Loss: 0.00000004\n",
      "Epoch: 19140/20000, Loss: 0.00000003\n",
      "Epoch: 19150/20000, Loss: 0.00000003\n",
      "Epoch: 19160/20000, Loss: 0.00000003\n",
      "Epoch: 19170/20000, Loss: 0.00000003\n",
      "Epoch: 19180/20000, Loss: 0.00000003\n",
      "Epoch: 19190/20000, Loss: 0.00000003\n",
      "Epoch: 19200/20000, Loss: 0.00000007\n",
      "Epoch: 19210/20000, Loss: 0.00000007\n",
      "Epoch: 19220/20000, Loss: 0.00000003\n",
      "Epoch: 19230/20000, Loss: 0.00000004\n",
      "Epoch: 19240/20000, Loss: 0.00000004\n",
      "Epoch: 19250/20000, Loss: 0.00000003\n",
      "Epoch: 19260/20000, Loss: 0.00000003\n",
      "Epoch: 19270/20000, Loss: 0.00000003\n",
      "Epoch: 19280/20000, Loss: 0.00000003\n",
      "Epoch: 19290/20000, Loss: 0.00000018\n",
      "Epoch: 19300/20000, Loss: 0.00000010\n",
      "Epoch: 19310/20000, Loss: 0.00000003\n",
      "Epoch: 19320/20000, Loss: 0.00000004\n",
      "Epoch: 19330/20000, Loss: 0.00000003\n",
      "Epoch: 19340/20000, Loss: 0.00000003\n",
      "Epoch: 19350/20000, Loss: 0.00000003\n",
      "Epoch: 19360/20000, Loss: 0.00000003\n",
      "Epoch: 19370/20000, Loss: 0.00000003\n",
      "Epoch: 19380/20000, Loss: 0.00000003\n",
      "Epoch: 19390/20000, Loss: 0.00000003\n",
      "Epoch: 19400/20000, Loss: 0.00000004\n",
      "Epoch: 19410/20000, Loss: 0.00000019\n",
      "Epoch: 19420/20000, Loss: 0.00000009\n",
      "Epoch: 19430/20000, Loss: 0.00000003\n",
      "Epoch: 19440/20000, Loss: 0.00000004\n",
      "Epoch: 19450/20000, Loss: 0.00000003\n",
      "Epoch: 19460/20000, Loss: 0.00000003\n",
      "Epoch: 19470/20000, Loss: 0.00000003\n",
      "Epoch: 19480/20000, Loss: 0.00000003\n",
      "Epoch: 19490/20000, Loss: 0.00000003\n",
      "Epoch: 19500/20000, Loss: 0.00000003\n",
      "Epoch: 19510/20000, Loss: 0.00000003\n",
      "Epoch: 19520/20000, Loss: 0.00000006\n",
      "Epoch: 19530/20000, Loss: 0.00000007\n",
      "Epoch: 19540/20000, Loss: 0.00000004\n",
      "Epoch: 19550/20000, Loss: 0.00000004\n",
      "Epoch: 19560/20000, Loss: 0.00000003\n",
      "Epoch: 19570/20000, Loss: 0.00000003\n",
      "Epoch: 19580/20000, Loss: 0.00000003\n",
      "Epoch: 19590/20000, Loss: 0.00000003\n",
      "Epoch: 19600/20000, Loss: 0.00000003\n",
      "Epoch: 19610/20000, Loss: 0.00000008\n",
      "Epoch: 19620/20000, Loss: 0.00000004\n",
      "Epoch: 19630/20000, Loss: 0.00000004\n",
      "Epoch: 19640/20000, Loss: 0.00000003\n",
      "Epoch: 19650/20000, Loss: 0.00000003\n",
      "Epoch: 19660/20000, Loss: 0.00000003\n",
      "Epoch: 19670/20000, Loss: 0.00000003\n",
      "Epoch: 19680/20000, Loss: 0.00000003\n",
      "Epoch: 19690/20000, Loss: 0.00000003\n",
      "Epoch: 19700/20000, Loss: 0.00000015\n",
      "Epoch: 19710/20000, Loss: 0.00000011\n",
      "Epoch: 19720/20000, Loss: 0.00000005\n",
      "Epoch: 19730/20000, Loss: 0.00000003\n",
      "Epoch: 19740/20000, Loss: 0.00000003\n",
      "Epoch: 19750/20000, Loss: 0.00000003\n",
      "Epoch: 19760/20000, Loss: 0.00000003\n",
      "Epoch: 19770/20000, Loss: 0.00000003\n",
      "Epoch: 19780/20000, Loss: 0.00000003\n",
      "Epoch: 19790/20000, Loss: 0.00000004\n",
      "Epoch: 19800/20000, Loss: 0.00000012\n",
      "Epoch: 19810/20000, Loss: 0.00000005\n",
      "Epoch: 19820/20000, Loss: 0.00000004\n",
      "Epoch: 19830/20000, Loss: 0.00000003\n",
      "Epoch: 19840/20000, Loss: 0.00000003\n",
      "Epoch: 19850/20000, Loss: 0.00000003\n",
      "Epoch: 19860/20000, Loss: 0.00000003\n",
      "Epoch: 19870/20000, Loss: 0.00000003\n",
      "Epoch: 19880/20000, Loss: 0.00000008\n",
      "Epoch: 19890/20000, Loss: 0.00000007\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 19900/20000, Loss: 0.00000003\n",
      "Epoch: 19910/20000, Loss: 0.00000003\n",
      "Epoch: 19920/20000, Loss: 0.00000003\n",
      "Epoch: 19930/20000, Loss: 0.00000003\n",
      "Epoch: 19940/20000, Loss: 0.00000003\n",
      "Epoch: 19950/20000, Loss: 0.00000003\n",
      "Epoch: 19960/20000, Loss: 0.00000003\n",
      "Epoch: 19970/20000, Loss: 0.00000012\n",
      "Epoch: 19980/20000, Loss: 0.00000008\n",
      "Epoch: 19990/20000, Loss: 0.00000005\n",
      "Epoch: 20000/20000, Loss: 0.00000004\n",
      "torch.Size([1, 256])\n",
      "torch.Size([256])\n"
     ]
    }
   ],
   "source": [
    "# Toy problem data\n",
    "input_size = 256\n",
    "hidden_size = 32\n",
    "output_size = 256\n",
    "sequence_length = 79\n",
    "batch_size = 1\n",
    "num_epochs = 20000\n",
    "\n",
    "\n",
    "# Set random seed for reproducibility\n",
    "#torch.manual_seed(42)\n",
    "\n",
    "\n",
    "\n",
    "input_data = u[:,0:79]\n",
    "target_data = u[:,1:80]\n",
    "\n",
    "test_data = u[:,79]\n",
    "#test_target = u[:,80:100]\n",
    "\n",
    "\n",
    "# Convert data to tensors\n",
    "input_tensor = torch.tensor(input_data.T).view(batch_size, sequence_length, input_size).float()\n",
    "target_tensor = torch.tensor(target_data.T).view(batch_size, sequence_length, output_size).float()\n",
    "\n",
    "# Convert test data to tensors\n",
    "test_tensor = torch.tensor(test_data.T).view(batch_size, 1, input_size).float()\n",
    "#test_target_tensor = torch.tensor(test_target.T).view(batch_size, 20, output_size).float()\n",
    "\n",
    "# Create coRNN instance\n",
    "cornn = coRNN(input_size, hidden_size, output_size, dt=0.1, gamma=10, epsilon= 2)\n",
    "\n",
    "# Loss and optimizer\n",
    "criterion = nn.MSELoss()\n",
    "optimizer = torch.optim.Adam(cornn.parameters(), lr=0.001)\n",
    "\n",
    "# Training loop\n",
    "for epoch in range(num_epochs):\n",
    "    # Forward pass\n",
    "    output = cornn(input_tensor)\n",
    "    loss = criterion(output, target_tensor)\n",
    "\n",
    "    # Backward and optimize\n",
    "    optimizer.zero_grad()\n",
    "    loss.backward()\n",
    "    optimizer.step()\n",
    "\n",
    "    # Print progress\n",
    "    if (epoch+1) % 10 == 0:\n",
    "        print(f'Epoch: {epoch+1}/{num_epochs}, Loss: {loss.item():.8f}')\n",
    "\n",
    "\n",
    "with torch.no_grad():\n",
    "    prediction = cornn(test_tensor)\n",
    "\n",
    "print(prediction.shape)\n",
    "\n",
    "final_time_output = prediction[-1, :]\n",
    "print(final_time_output.shape)\n",
    "\n",
    "final_out = final_time_output.detach().numpy().reshape(-1,1)\n",
    "final_true = u[:,-1].reshape(-1,1)\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "4ac1a804",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "torch.Size([1, 1, 256])\n",
      "torch.Size([1, 20, 256])\n"
     ]
    }
   ],
   "source": [
    "print(test_tensor.shape)\n",
    "prediction_tensor = torch.zeros(1, 20, 256).float()\n",
    "print(prediction_tensor.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "e73b12e7",
   "metadata": {},
   "outputs": [],
   "source": [
    "with torch.no_grad():\n",
    "    prediction = cornn(test_tensor)\n",
    "    prediction = prediction.view(1, 1, 256).float()\n",
    "    prediction_tensor[:, 0, :] = prediction\n",
    "    for i in range(19):\n",
    "        prediction = cornn(prediction)\n",
    "        prediction = prediction.view(1, 1, 256).float()\n",
    "        prediction_tensor[:, i+1, :] = prediction"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "68cf2f04",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Exact Solution\n",
    "\n",
    "u_test = u_1.T\n",
    "u_test_full = u_test[80:100, :]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "cd70c84b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "torch.Size([1, 1, 256])"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "prediction.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "57a01be1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(20, 256)"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "u_test_full.shape"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "65936417",
   "metadata": {},
   "source": [
    "### L2 norm"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "e92b5fe2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "torch.Size([20, 256])"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Extrapolation\n",
    "\n",
    "k1 = ( prediction_tensor - u_test_full)**2\n",
    "u_test_full_tensor = torch.tensor(u_test_full**2)\n",
    "u_test_full_tensor.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "9a5129a9",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Relative Error Test:  0.00460689338936899 %\n"
     ]
    }
   ],
   "source": [
    "# Compute the relative L2 error norm (generalization error)\n",
    "relative_error_test = torch.mean(k1)/ torch.mean(u_test_full_tensor)\n",
    "\n",
    "print(\"Relative Error Test: \", relative_error_test.item(), \"%\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "a3b48ce7",
   "metadata": {},
   "outputs": [
    {
     "ename": "SyntaxError",
     "evalue": "invalid syntax (4209523232.py, line 1)",
     "output_type": "error",
     "traceback": [
      "\u001b[0;36m  Input \u001b[0;32mIn [12]\u001b[0;36m\u001b[0m\n\u001b[0;31m    2+\u001b[0m\n\u001b[0m      ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n"
     ]
    }
   ],
   "source": [
    "2+"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "60c30f0c",
   "metadata": {},
   "source": [
    "### Max absolute error"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e5652aca",
   "metadata": {},
   "outputs": [],
   "source": [
    "R_abs = torch.max(torch.abs(prediction_tensor - u_test_full))\n",
    "print(R_abs)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f58215d9",
   "metadata": {},
   "source": [
    "### Explained variance score"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "744fa133",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "\n",
    "a = prediction_tensor\n",
    "b = u_test_full\n",
    "# Assuming 'a' is your predicted values (model's predictions) and 'b' is the true values (ground truth)\n",
    "# Make sure 'a' and 'b' are PyTorch tensors\n",
    "a = torch.tensor(a)\n",
    "b = torch.tensor(b)\n",
    "# Calculate the mean of 'b'\n",
    "mean_b = torch.mean(b)\n",
    "\n",
    "# Calculate the Explained Variance Score\n",
    "numerator = torch.var(b - a)  # Variance of the differences between 'b' and 'a'\n",
    "denominator = torch.var(b)    # Variance of 'b'\n",
    "evs = 1 - numerator / denominator\n",
    "\n",
    "print(\"Explained Variance Score:\", evs.item())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ed83c989",
   "metadata": {},
   "source": [
    "### Mean absolute error"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "8e3cf699",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Compute the relative L2 error norm (generalization error)\n",
    "relative_error_test = torch.mean(torch.abs(prediction_tensor - u_test_full))\n",
    "\n",
    "print(\"Relative Error Test: \", relative_error_test, \"%\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "05bca726",
   "metadata": {},
   "outputs": [],
   "source": [
    "print(prediction_tensor.shape)\n",
    "prediction_tensor = torch.squeeze(prediction_tensor)\n",
    "prediction_tensor.shape"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8d74b054",
   "metadata": {},
   "source": [
    "### Ploting at snapshot"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "df4a0a6e",
   "metadata": {},
   "outputs": [],
   "source": [
    "plt.rcParams['figure.figsize'] = [10, 4]\n",
    "\n",
    "from matplotlib.font_manager import FontProperties\n",
    "plt.rcParams['axes.unicode_minus'] = False\n",
    "font_path = 'times-new-roman.ttf'\n",
    "custom_font = FontProperties(fname=font_path)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "aaedd699",
   "metadata": {},
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import torch\n",
    "\n",
    "# Create the figure and axis objects with reduced width\n",
    "fig, ax = plt.subplots(figsize=(5, 5))  # You can adjust the width (7 inches) and height (5 inches) as needed\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "final_time_output = prediction_tensor[3, :]\n",
    "final_out = final_time_output.detach().numpy().reshape(-1, 1)\n",
    "final_true = u_1[:, 83].reshape(-1, 1)\n",
    "\n",
    "# Plot the data with red and blue lines, one with dotted and one with solid style\n",
    "ax.plot(x, final_out, color='red', linestyle='dotted', linewidth=12, label='Prediction')\n",
    "ax.plot(x, final_true, color='blue', linestyle='solid', linewidth=7, label='True')\n",
    "\n",
    "\n",
    "# Set the axis labels with bold font weight\n",
    "ax.set_xlabel(r\"${x}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "ax.set_ylabel(r\"${u(x, t)}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "\n",
    "# Set the title with bold font weight\n",
    "ax.set_title(r\"${t = 0.83}$\", fontsize=26, color='black', fontweight='bold')\n",
    "\n",
    "# Set the number of ticks for x-axis and y-axis to 3\n",
    "ax.set_xticks([-1, 0, 1])\n",
    "ax.set_yticks([-1, 0, 1])\n",
    "\n",
    "# Set tick labels fontweight to bold and increase font size\n",
    "ax.tick_params(axis='both', which='major', labelsize=20, width=2, length=10)\n",
    "\n",
    "# # Set the fontweight for tick labels to bold\n",
    "# for tick in ax.get_xticklabels() + ax.get_yticklabels():\n",
    "#     tick.set_weight('bold')\n",
    "\n",
    "# Set the spines linewidth to bold\n",
    "ax.spines['top'].set_linewidth(2)\n",
    "ax.spines['right'].set_linewidth(2)\n",
    "ax.spines['bottom'].set_linewidth(2)\n",
    "ax.spines['left'].set_linewidth(2)\n",
    "\n",
    "# Set the legend\n",
    "# ax.legend()\n",
    "\n",
    "plt.savefig('coRNN_0.83_20.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "#plt.savefig('lem_0.83_20.png', dpi=500, bbox_inches=\"tight\")\n",
    "# Show the plot\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "68dfda35",
   "metadata": {},
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import torch\n",
    "\n",
    "# Create the figure and axis objects with reduced width\n",
    "fig, ax = plt.subplots(figsize=(5, 5))  # You can adjust the width (7 inches) and height (5 inches) as needed\n",
    "\n",
    "\n",
    "\n",
    "final_time_output = prediction_tensor[-2, :]\n",
    "final_out = final_time_output.detach().numpy().reshape(-1, 1)\n",
    "final_true = u_1[:, -2].reshape(-1, 1)\n",
    "\n",
    "# Plot the data with red and blue lines, one with dotted and one with solid style\n",
    "ax.plot(x, final_out, color='red', linestyle='dotted', linewidth=12, label='Prediction')\n",
    "ax.plot(x, final_true, color='blue', linestyle='solid', linewidth=7, label='True')\n",
    "\n",
    "\n",
    "# Set the axis labels with bold font weight\n",
    "ax.set_xlabel(r\"${x}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "ax.set_ylabel(r\"${u(x, t)}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "\n",
    "# Set the title with bold font weight\n",
    "ax.set_title(r\"${t = 0.98}$\", fontsize=26, color='black', fontweight='bold')\n",
    "\n",
    "# Set the number of ticks for x-axis and y-axis to 3\n",
    "ax.set_xticks([-1, 0, 1])\n",
    "ax.set_yticks([-1, 0, 1])\n",
    "\n",
    "# Set tick labels fontweight to bold and increase font size\n",
    "ax.tick_params(axis='both', which='major', labelsize=20, width=2, length=10)\n",
    "\n",
    "# # Set the fontweight for tick labels to bold\n",
    "# for tick in ax.get_xticklabels() + ax.get_yticklabels():\n",
    "#     tick.set_weight('bold')\n",
    "\n",
    "# Set the spines linewidth to bold\n",
    "ax.spines['top'].set_linewidth(2)\n",
    "ax.spines['right'].set_linewidth(2)\n",
    "ax.spines['bottom'].set_linewidth(2)\n",
    "ax.spines['left'].set_linewidth(2)\n",
    "\n",
    "# Set the legend\n",
    "# ax.legend()\n",
    "\n",
    "plt.savefig('coRNN_0.98_20.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "#plt.savefig('lem_0.98_20.png', dpi=500, bbox_inches=\"tight\")\n",
    "# Show the plot\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "03b9675c",
   "metadata": {},
   "source": [
    "### contour plot"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "2cd3dc82",
   "metadata": {},
   "outputs": [],
   "source": [
    "print(input_tensor.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "4ca1486a",
   "metadata": {},
   "outputs": [],
   "source": [
    "print(prediction_tensor.shape)\n",
    "prediction_tensor = torch.squeeze(prediction_tensor)\n",
    "input_tensor = torch.squeeze(input_tensor)\n",
    "\n",
    "conc_u = torch.squeeze(input_tensor)\n",
    "concatenated_tensor = torch.cat((conc_u, prediction_tensor), dim=0)\n",
    "\n",
    "x1 = np.linspace(-1, 1, 256)\n",
    "t1 = np.linspace(0, 1, 99)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "318c8974",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from matplotlib.ticker import FixedLocator\n",
    "\n",
    "# Assuming you have defined concatenated_tensor as a PyTorch tensor\n",
    "# concatenated_tensor = torch.cat((tensor1, tensor2), dim=0)\n",
    "\n",
    "# Convert concatenated_tensor to a NumPy array\n",
    "concatenated_array = concatenated_tensor.numpy()\n",
    "\n",
    "# Define custom color levels\n",
    "x = np.linspace(-1, 1, concatenated_array.shape[1])  # Replace 0 and 1 with your actual x range\n",
    "t = np.linspace(0, 1, concatenated_array.shape[0])  # Replace 0 and 1 with your actual t range\n",
    "X, T = np.meshgrid(x, t1)\n",
    "\n",
    "# Define custom color levels using the minimum and maximum from the NumPy array\n",
    "c_levels = np.linspace(np.min(concatenated_array), np.max(concatenated_array), 400)\n",
    "\n",
    "# Plot the contour with interpolated data\n",
    "plt.figure(figsize=(20, 5))\n",
    "plt.pcolormesh(T, X, concatenated_array, shading='auto', cmap='coolwarm')\n",
    "\n",
    "# Set the fontweight for axis labels to regular (not bold)\n",
    "plt.xlabel(\"$t$\", fontsize=26)\n",
    "plt.ylabel(\"$x$\", fontsize=26)\n",
    "plt.title(\"$u(x, t)$\", fontsize=26)\n",
    "\n",
    "# Set tick labels fontweight to regular (not bold) and increase font size\n",
    "plt.tick_params(axis='both', which='major', labelsize=20, width=3, length=10)\n",
    "\n",
    "# Set the fontweight for tick labels to regular (not bold)\n",
    "for tick in plt.gca().get_xticklabels() + plt.gca().get_yticklabels():\n",
    "    tick.set_weight('normal')\n",
    "\n",
    "# Set the number of ticks for x-axis and y-axis to 5\n",
    "num_ticks = 5\n",
    "x_ticks = np.linspace(np.min(T), np.max(T), num_ticks)\n",
    "y_ticks = np.linspace(np.min(X), np.max(X), num_ticks)\n",
    "\n",
    "plt.gca().xaxis.set_major_locator(FixedLocator(x_ticks))\n",
    "plt.gca().yaxis.set_major_locator(FixedLocator(y_ticks))\n",
    "\n",
    "cbar1 = plt.colorbar()\n",
    "# Set the number of ticks for the color bar with uniformly distributed numbers\n",
    "num_ticks = 5\n",
    "c_ticks = np.linspace(np.min(concatenated_array), np.max(concatenated_array), num_ticks)\n",
    "cbar1.set_ticks(c_ticks)\n",
    "\n",
    "# Set the fontweight and fontsize for color bar tick labels\n",
    "for t in cbar1.ax.get_yticklabels():\n",
    "    t.set_weight('normal')\n",
    "    t.set_fontsize(26)  # Increase the font size for color bar tick labels\n",
    "\n",
    "# Increase the size of numbers on axis and color bar\n",
    "plt.xticks(fontsize=26)\n",
    "plt.yticks(fontsize=26)\n",
    "\n",
    "# Increase the tick size and width of the color bar\n",
    "cbar1.ax.tick_params(axis='both', which='major', labelsize=30, width=3,  length=10)\n",
    "\n",
    "# Add a dotted line at t = 0.8\n",
    "plt.axvline(x=0.8, color='black', linestyle='dotted', linewidth=5)\n",
    "\n",
    "#plt.savefig('Contour_LEM_20.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "plt.savefig('contour_coRNN_20.jpeg', dpi=500, bbox_inches=\"tight\")\n",
    "# Show the plot\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "c4df6dea",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x432 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# Data from the table\n",
    "v_values = [0.05, 0.5, 1, 1.5, 2]\n",
    "e_values = [0.001, 0.01, 0.1, 1, 10]\n",
    "data = [\n",
    "    [0.004274511261, 0.0045954293, 0.0042221, 0.00415216, 0.005987208],\n",
    "    [0.0049350, 0.00431524, 0.0046560, 0.0056003, 0.0040817396],\n",
    "    [0.00454655, 0.00413854, 0.00466175, 0.004315476, 0.00475263],\n",
    "    [0.00517842, 0.00487212, 0.00435769, 0.004091070, 0.0050430],\n",
    "    [0.00469107, 0.004006047154, 0.003916094, 0.00442386605, 0.0046068933]\n",
    "]\n",
    "\n",
    "# Convert data to a NumPy array\n",
    "v_values = np.array(v_values)\n",
    "e_values = np.array(e_values)\n",
    "data = np.array(data)\n",
    "\n",
    "# Create a contour plot\n",
    "plt.figure(figsize=(8, 6))\n",
    "# contour = plt.contourf(v_values, e_values, data, levels=20, cmap='viridis')\n",
    "contour = plt.contourf(e_values, v_values, data, levels=20, cmap='viridis')\n",
    "plt.colorbar(contour, label='Values')\n",
    "plt.xlabel('v(!), e-')\n",
    "plt.ylabel('0.001  0.01  0.1  1  10')\n",
    "plt.title('Contour Plot')\n",
    "#plt.grid()\n",
    "\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "7a5ea61e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# Define your data\n",
    "data = np.array([\n",
    "    [0.1, 0.004594935, 0.003533, 0.0040108, 0.00472714, 0.0046558141],\n",
    "    [0.3, 0.88462878, 0.5678798, 0.44142248, 0.32360147, 0.300290409],\n",
    "    [0.5, 0.089806, 0.116980766, 0.04670006, 0.0085662, 0.0126315],\n",
    "    [0.7, 0.0997603, 0.1249526, 0.1271880, 0.1153250438, 0.12143247],\n",
    "    [0.9, 0.1721318, 0.14675536, 0.144808179, 0.1415642, 2.64384546]\n",
    "])\n",
    "\n",
    "data1 = np.array([\n",
    "    [0.1, 0.00013050, 0.0002666503, 0.000046665180259764, 0.003234338, 0.0014085],\n",
    "    [0.3, 0.04273750, 0.030208, 0.05416726, 0.001688055, 0.0618813],\n",
    "    [0.5, 0.08075318, 0.00305555, 0.04613069, 0.023499592, 0.01064494],\n",
    "    [0.7, 0.08321598, 0.0736146, 0.07003083, 0.2631810, 0.059834297],\n",
    "    [0.9, 0.03300295, 0.13740758, 0.057236404, 0.00839072, 0.06202654]\n",
    "])\n",
    "\n",
    "# Calculate the mean and variance for each row starting from the second column\n",
    "means = np.mean(data[:, 1:], axis=1)\n",
    "variances = np.var(data[:, 1:], axis=1)\n",
    "\n",
    "# Calculate the confidence intervals (mean - variance and mean + variance)\n",
    "lower_bound = means - variances\n",
    "upper_bound = means + variances\n",
    "\n",
    "\n",
    "# Calculate the mean and variance for each row starting from the second column\n",
    "means1 = np.mean(data1[:, 1:], axis=1)\n",
    "variances1 = np.var(data1[:, 1:], axis=1)\n",
    "\n",
    "# Calculate the confidence intervals (mean - variance and mean + variance)\n",
    "lower_bound1 = means1 - variances1\n",
    "upper_bound1 = means1 + variances1\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "# Plot the means with confidence intervals\n",
    "x = data[:, 0]  # x-axis values (first column)\n",
    "plt.errorbar(x, means, yerr=variances, fmt='o', label='Mean of errors')\n",
    "plt.fill_between(x, lower_bound, upper_bound, alpha=0.1, label='Confidence Interval')\n",
    "\n",
    "\n",
    "x1 = data1[:, 0]\n",
    "plt.errorbar(x1, means1, yerr=variances1, fmt='o', label='Mean of errors')\n",
    "plt.fill_between(x1, lower_bound1, upper_bound1, alpha=1, label='Confidence Interval')\n",
    "\n",
    "plt.xlabel('dt')\n",
    "plt.ylabel('Mean')\n",
    "#plt.legend()\n",
    "plt.title('Mean and Confidence Interval')\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "db7778c4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Row 1: Mean = 0.001017330696051953, Variance = 1.4720632188270024e-06, Confidence Interval = (0.0010158586328331259, 0.00101880275927078)\n",
      "Row 2: Mean = 0.038136422999999996, Variance = 0.000446664049871196, Confidence Interval = (0.0376897589501288, 0.03858308704987119)\n",
      "Row 3: Mean = 0.0328167904, Variance = 0.0007878579873546804, Confidence Interval = (0.03202893241264532, 0.03360464838735468)\n",
      "Row 4: Mean = 0.10997534140000001, Variance = 0.005923965817852148, Confidence Interval = (0.10405137558214786, 0.11589930721785216)\n",
      "Row 5: Mean = 0.0596128388, Variance = 0.0018790573581052377, Confidence Interval = (0.05773378144189476, 0.061491896158105235)\n"
     ]
    },
    {
     "data": {
      "image/png": "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6xAR9uzZA0CnTp3IzMws/hW6YMECVq1axdVXX02/fv3IyrJ+ub300ksMGDCA3r17s3Xr1j88pzfffJPJkycXJweA8ePHExUVxdGjRxk3bhx9+vThtNNOY/369YD1y/e6665j5MiRnHLKKbz44ouAlax27drFBRdcwHPPPcesWbO4/XbresrffvuNoUOH0rt3bx588MESMTz99NMMGjSIPn368Mgj1t1Td+/eTffu3bnhhhvo2bMn5513XvFzSkxM5JxzzqFv374MGDCAnTt3lllPWZKSktzW724/JiQkcOaZZxIXF8e4cePYv38/ACNHjuTPf/4zAwcOZMaMGXTo0IHCwsLi90O7du3Iy8vjP//5D4MGDaJv375cfvnlVT46U6qq/CZB/OOzTcXnF9z9PbxoO1l5Je8ImJVXwN8XrC9znX98tqmMrZU0ceJE5s2bR3Z2NuvXr2fIkN/vDjljxgzOOussVq5cybJly7j77rs5efIkrVq1YunSpfzwww/Mnz+fO+64o3idNWvW8Pzzz7N582Z27drFihUrSmyvVatWZGdnc+LECX744QcGDhzIDz/8wO7du2nVqlWJX/jjx49n4MCBvP/++6xdu5bw8HAAWrRowerVq7nlllvcNmds2bKlOAmV9sgjj9C/f3/Wr1/PE088wbXXXlu8bOvWrSxZsoSVK1fyj3/8g7y8PF5//XWio6NZtmwZf/nLX0rUdeedd3LLLbewYcMG2rRpUzz/q6++YseOHaxcuZK1a9eSkJDA999/D8COHTu47bbb2LRpE5GRkXz00UcAXH311dx2222sW7eOn376iTZt2pRbT1nc1V96PwYFBfGnP/2JBQsWkJCQwKRJk3jggQeK68jNzWXVqlU88sgj9OvXj+++s+5nv2jRIkaPHk1wcDCXXXYZ8fHxrFu3ju7du/P222+XG5dSNU2PbW25Be6HHCk6oqiOPn36kJSUxNy5c7nwwgtLLPvqq69YuHBh8ZdwdnY2e/bsITo6mttvv53Vq1cTHBzM9u3Fw1MxePDg4qaYfv36kZSUxOmnn16i3mHDhrFixQq+//577r//fr788kuMMYwYMaJSMV922WUAxMXF8fHHH1dQuqQff/yx+Ev5rLPOIjU1lRMnTgAwZswYQkNDCQ0NpVWrVhw8eLD4ubizYsWK4romTZrEPffcA1j77auvvqJ///6ANdTAjh07GDJkCB07dqRfv37F8SclJZGenk5KSgqXXnopYF1UVl49Z5xxRpkxuau/tG3btrFx40bOPfdcwLpo07Vp8YorrijxeP78+YwaNYp58+Zx6623ArBx40YefPBB0tLSyMjIYPTo0WXGpJQ3+E2CeOTinuUuH/rE1+w/kfOH+TGR4cy/aaibNTxzySWXcNddd7F8+XJSU1OL5xtj+Oijj+jateT97adPn05UVBQ//fQTDRs2LP5CAwgNDS1+HBgYSH5+/h+2d8YZZxQfNYwdO5annnoKEWHMmDGVirdoG2XV361bNxISEhg7dmyl6vMk9tLcdd80xnDfffdx0003lZi/cePGP2yjqInJnbLqKU9l6jfG0LNnT37+2eoRV/pCOdehmS+55BLuv/9+jh49SkJCAmeddRYAU6ZM4dNPP6Vv377MmjWL5cuXVzpGpWqC3zQxVeTOUbGEBweWmBceHMjdo7uWsYZnrrvuOh555BF69+5dYv7o0aN56aWXis8jrFmzBoDjx4/Tpk0bAgICmDNnDgUFBX+oszwjRozgvffeo0uXLgQEBNCsWTMWL178hyMNgIiICNLT0z2q/6abbmL27Nn8+uuvxfM+/vhjDh48yIgRI3j//fcB65xJixYtaNy4sUf1Fxk+fDhFgzAW1QnWfnvnnXfIyMgAICUlhUOHDpVZT0REBG3btuXTTz8FICcnh8zMTI/rKY/rfuzatSuHDx8uThB5eXls2uS+SbJRo0YMGjSIO++8k4suuojAQOt9mJ6eTps2bcjLyyvx3JWqLZogbGN6RfHPy3oTEmjtkpjIcP55We9q92Iq0rZt2xLnEYo89NBD5OXl0adPH3r27MlDDz0EwK233srs2bMZNmwYW7du9fhmILGxsRhjiptKTj/9dCIjI2natOkfyk6ZMoWbb765xEnqirRq1Yp58+Zx11130bVrV7p3786SJUuIiIhg+vTpJCQk0KdPH+69915mz57tUeyuXnjhBV555RV69+5NSsrvHQbOO+88rrrqquIT2OPHj68wyc2ZM4cXX3yRPn36MGzYMA4cOFClesriuh8LCgpYsGAB99xzD3379mX48OHFHQ3cueKKK3jvvfdKND099thjDBkyhOHDh9OtW7cqxVTXFPUk3HbM6klYE51EVNV5bbjv2jZw4ECzatWqEvO2bNlC9+7d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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "\n",
    "data = np.array([\n",
    "    [0.1, 0.00013050, 0.0002666503, 0.000046665180259764, 0.003234338, 0.0014085],\n",
    "    [0.3, 0.04273750, 0.030208, 0.05416726, 0.001688055, 0.0618813],\n",
    "    [0.5, 0.08075318, 0.00305555, 0.04613069, 0.023499592, 0.01064494],\n",
    "    [0.7, 0.08321598, 0.0736146, 0.07003083, 0.2631810, 0.059834297],\n",
    "    [0.9, 0.03300295, 0.13740758, 0.057236404, 0.00839072, 0.06202654]\n",
    "])\n",
    "\n",
    "# Calculate mean and variance for each row starting from the 2nd column\n",
    "means = np.mean(data[:, 1:], axis=1)\n",
    "variances = np.var(data[:, 1:], axis=1)\n",
    "\n",
    "# Calculate the confidence interval (mean - variance, mean + variance)\n",
    "lower_bound = means - variances\n",
    "upper_bound = means + variances\n",
    "\n",
    "# Print means, variances, and the confidence intervals\n",
    "for i in range(len(means)):\n",
    "    print(f\"Row {i+1}: Mean = {means[i]}, Variance = {variances[i]}, Confidence Interval = ({lower_bound[i]}, {upper_bound[i]})\")\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# Create a list of row numbers for the x-axis\n",
    "row_numbers = list(range(1, len(means) + 1))\n",
    "\n",
    "# Create a plot for the means and their confidence intervals\n",
    "plt.errorbar(row_numbers, means, yerr=variances, fmt='-o', label='Mean with Confidence Interval')\n",
    "plt.xlabel('Row Number')\n",
    "plt.ylabel('Value')\n",
    "plt.title('Mean and Confidence Interval for Each Row')\n",
    "plt.legend()\n",
    "plt.grid(True)\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "dd438b08",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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G2/wxhtvDMk+xxvDeV1HDr3N/b/+GcFwhCz36OmkStd13ZlMa+LEifzxj39k+vTpvPHGG5x55pns3Zt0MOWYYPRcLWOUp59+mqysLD7/+c93LTv66KM5+eSTUVWuueYali5dyrJly7j/fifF3DPPPMOpp57KBRdcwJFHHsknP/lJVJXbb7+dBx54gG9/+9t88pOfpLKykqVLlwLQ2trKxRdfzOLFizn33HNpbW3tOt7jjz/O2rVrWbVqFR//+MdpamoCoKysjOuuu45Vq1axbNkytm3bBkBTUxOf+cxnWLZsGcuXL+fBBx/sdz99EW//lZWV/PKXv+Smm25ixYoVPPfccxw6dIjzzz+fY489lmOPPZbnn38eAL/fz6c//WlOPPFEPv3pT3P88cezZcuWrv2feuqpbNiwgX/+85+sXbuWlStXcsIJJ/DWW2/1a5fX6+Wkk04iNzc3qd/Q6M1wXtc7361ixSkfobUjTFNzs13XCa7rzvSRK1euZPr06QAsWbKE1tZW2tvbk/9RxwAmeGnmjTfe4Jhjjom77ve//z0bN25k06ZNPPnkk1xzzTXs378fgNdee42bb76ZrVu3snPnTp5//nk+97nPcfbZZ3PjjTfym9/8ptu+fvGLX5Cfn8+bb77Jd7/7XV555RUADh8+zPe//32efPJJXn31VVavXs1PfvKTru0mTpzIq6++yhe+8AV+/OMfA/C9730Pn8/H66+/zubNm3n/+9+fcD990XP/ZWVlfP7zn+fLX/4yGzdu5OSTT+bqq6/my1/+Mi+//DIPPvggn/vc57q237p1K08++ST33nsvF110EQ888AAA+/fvZ//+/axevZojjzyS5557jtdee43rr7+eb3zjGyn8QsZAGK7r+o677u62r5/f8p/k5eXZdd3HdR0KR4iXLfnBBx9k1apV5OTkJPwuYwnr0sxg/v73v3PJJZfgdruZMmUK73vf+3j55ZcpKipizZo1zJzpBD2tWLGCyspKTjrppD739be//Y0vfelLACxfvpzly5cD8OKLL7J161ZOPPFEADo6Oli7dm3Xdueddx4AxxxzDL///e8BePLJJ7u6qQBKSkr405/+1O9++iLe/nvy5JNPsnVrV1o+Ghoaup6yzz77bDorYFx44YWcccYZfPe73+WBBx7oGk8JBAJceumlvPPOO4gIwWAwoV3G8DHQ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KsBJUbZ48eKuWnbm3aWAqqbtBdwL7AeCOONwlwOfBz4fXX8VsAXYBLwInBCz7YeBt4EdwDeTOV5+fr72ZOvWrb2W9cUJP/yrzvn6n3q9TvjhX5PeRzy8Xq9u2rRJzz//fG1tbdWjjz5an376aV23bp2qql577bV6zz33qKpqXV2dLliwQJuamrS5uVlbW1tVVfXtt9/WY445RlVVn376aS0qKtI9e/ZoOBzW448/Xp977rlex122bJk+88wzqqr67W9/W6+++mpVVb3uuuv0xhtv7NV+3759OmvWLK2urtb29nY94YQT9Morr1RV1draWo1EIqqq+l//9V/6la98Je6++mr3kY98RP/+97+rqmpjY6MGg0F97LHH9F/+5V80EoloOBzWdevW6bPPPqu7du3SJUuW9HtOk2kzWFK5dkaalGz7yRLV64p6v34yuPM3kOu6pi6g+w/X68HaBg20dOirm7foipWrNNDSoX969AktKirSXa89q+3739Rj1xynjz75tAZaOrq9lixdqhWPPamBlg79Wvk39AtXflEDLR1a/o1v6ff+Y72GwuFudo6m61rVubZnzZqlgUBAVVWb2oK9zkHs660DDfrOwcakf7d41w7QrGnUiqF6pTWXpqpekmD9LcAtfaz7M/Dn4bCrL/bVt6a0PBWWL19OZWUl9957Lx/+8Ie7rXv88cd55JFHuup2tbW1sXv3bqZPn85VV13Fxo0bcbvd3ZLaJiofFAgEqK+v533vex8Al156KR//+Mf7tfGll17i1FNPZdKkSYCT0LbzmFVVVVx00UXs37+fjo4O5s6dG3cffbU78cQT+cpXvsInP/lJzjvvPGbOnMnjjz/O448/zsqVKwGnQOc777zD7NmzkzupRnIEqlJbngKpXtc7KiuZOnU613zlal7fvAm3y8327e90bbNq9bHMnD4VgGXLj2b3u5WsPeG9RMiBQIBAfYCTTj4FgEs+9Wku/WT320xLRxhvjuByOo9G1XXd1NTE+eefz80330xRUZF5dymS0V2amcb04ryUlqfK2WefzVe/+tVu3T7geOEPPvggGzduZOPGjezevZvFixdz0003MWXKFDZt2sSGDRvo6Ojo2maoygclyxe/+EWuuuoqXn/9dX71q1/R1taWUrvy8nJuv/12WltbOfHEE9m2bRuqyrXXXtv1vbdv387ll18+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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# Define your data\n",
    "data = np.array([\n",
    "    [0.1, 0.004594935, 0.003533, 0.0040108, 0.00472714, 0.0046558141],\n",
    "    [0.3, 0.88462878, 0.5678798, 0.44142248, 0.32360147, 0.300290409],\n",
    "    [0.5, 0.089806, 0.116980766, 0.04670006, 0.0085662, 0.0126315],\n",
    "    [0.7, 0.0997603, 0.1249526, 0.1271880, 0.1153250438, 0.12143247],\n",
    "    [0.9, 0.1721318, 0.14675536, 0.144808179, 0.1415642, 2.64384546]\n",
    "])\n",
    "\n",
    "data1 = np.array([\n",
    "    [0.1, 0.00013050, 0.0002666503, 0.000046665180259764, 0.003234338, 0.0014085],\n",
    "    [0.3, 0.04273750, 0.030208, 0.05416726, 0.001688055, 0.0618813],\n",
    "    [0.5, 0.08075318, 0.00305555, 0.04613069, 0.023499592, 0.01064494],\n",
    "    [0.7, 0.08321598, 0.0736146, 0.07003083, 0.2631810, 0.059834297],\n",
    "    [0.9, 0.03300295, 0.13740758, 0.057236404, 0.00839072, 0.06202654]\n",
    "])\n",
    "\n",
    "# Calculate the mean and variance for each row starting from the second column\n",
    "means = np.mean(data[:, 1:], axis=1)\n",
    "variances = np.var(data[:, 1:], axis=1)\n",
    "\n",
    "# Calculate the confidence intervals (mean - variance and mean + variance)\n",
    "lower_bound = means - variances\n",
    "upper_bound = means + variances\n",
    "\n",
    "# Calculate the mean and variance for each row starting from the second column for the second dataset\n",
    "means1 = np.mean(data1[:, 1:], axis=1)\n",
    "variances1 = np.var(data1[:, 1:], axis=1)\n",
    "\n",
    "# Calculate the confidence intervals (mean - variance and mean + variance) for the second dataset\n",
    "lower_bound1 = means1 - variances1\n",
    "upper_bound1 = means1 + variances1\n",
    "\n",
    "# Create a figure and the first subplot\n",
    "fig, ax1 = plt.subplots()\n",
    "\n",
    "# Plot the means with confidence intervals for the first dataset\n",
    "x = data[:, 0]  # x-axis values (first column)\n",
    "ax1.errorbar(x, means, yerr=variances, fmt='o', label='Mean of dataset 1')\n",
    "ax1.fill_between(x, lower_bound, upper_bound, alpha=0.3, label='Confidence Interval 1')\n",
    "ax1.set_xlabel('dt')\n",
    "ax1.set_ylabel('Mean (Dataset 1)', color='tab:blue')\n",
    "ax1.legend(loc='upper left')\n",
    "\n",
    "# Create a second y-axis on the right side\n",
    "ax2 = ax1.twinx()\n",
    "\n",
    "# Plot the means with confidence intervals for the second dataset\n",
    "x1 = data1[:, 0]\n",
    "ax2.errorbar(x1, means1, yerr=variances1, fmt='o', label='Mean of dataset 2', color='tab:orange')\n",
    "ax2.fill_between(x1, lower_bound1, upper_bound1, alpha=0.3, label='Confidence Interval 2')\n",
    "ax2.set_ylabel('Mean (Dataset 2)', color='tab:orange')\n",
    "ax2.legend(loc='upper right')\n",
    "\n",
    "plt.title('Mean and Confidence Interval')\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "2fcd2059",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# Define your data\n",
    "data = np.array([\n",
    "    [0.1, 0.004594935, 0.003533, 0.0040108, 0.00472714, 0.0046558141],\n",
    "    [0.3, 0.88462878, 0.5678798, 0.44142248, 0.32360147, 0.300290409],\n",
    "    [0.5, 0.089806, 0.116980766, 0.04670006, 0.0085662, 0.0126315],\n",
    "    [0.7, 0.0997603, 0.1249526, 0.1271880, 0.1153250438, 0.12143247],\n",
    "    [0.9, 0.1721318, 0.14675536, 0.144808179, 0.1415642, 2.64384546]\n",
    "])\n",
    "\n",
    "data1 = np.array([\n",
    "    [0.1, 0.00013050, 0.0002666503, 0.000046665180259764, 0.003234338, 0.0014085],\n",
    "    [0.3, 0.04273750, 0.030208, 0.05416726, 0.001688055, 0.0618813],\n",
    "    [0.5, 0.08075318, 0.00305555, 0.04613069, 0.023499592, 0.01064494],\n",
    "    [0.7, 0.08321598, 0.0736146, 0.07003083, 0.2631810, 0.059834297],\n",
    "    [0.9, 0.03300295, 0.13740758, 0.057236404, 0.00839072, 0.06202654]\n",
    "])\n",
    "\n",
    "# Calculate the mean and variance for each row starting from the second column\n",
    "means = np.mean(data[:, 1:], axis=1)\n",
    "variances = np.var(data[:, 1:], axis=1)\n",
    "\n",
    "# Calculate the confidence intervals (mean - variance and mean + variance)\n",
    "lower_bound = means - variances\n",
    "upper_bound = means + variances\n",
    "\n",
    "# Calculate the mean and variance for each row starting from the second column for the second dataset\n",
    "means1 = np.mean(data1[:, 1:], axis=1)\n",
    "variances1 = np.var(data1[:, 1:], axis=1)\n",
    "\n",
    "# Calculate the confidence intervals (mean - variance and mean + variance) for the second dataset\n",
    "lower_bound1 = means1 - variances1\n",
    "upper_bound1 = means1 + variances1\n",
    "\n",
    "# Create a figure and the first subplot\n",
    "fig, ax1 = plt.subplots()\n",
    "\n",
    "# Plot the means with confidence intervals for the first dataset\n",
    "x = data[:, 0]  # x-axis values (first column)\n",
    "ax1.errorbar(x, means, yerr=variances, fmt='o', label='CoRNN')\n",
    "ax1.fill_between(x, lower_bound, upper_bound, alpha=0.3)\n",
    "ax1.set_xlabel('$\\Delta$t', fontsize=16)\n",
    "ax1.set_ylabel('Mean L2 error CoRNN', color='tab:blue', fontsize=16)\n",
    "ax1.legend(loc='upper left')\n",
    "\n",
    "# Increase the axis label and tick size\n",
    "ax1.tick_params(axis='both', which='both', labelsize=15)\n",
    "\n",
    "# Create a second y-axis on the right side\n",
    "ax2 = ax1.twinx()\n",
    "\n",
    "# Plot the means with confidence intervals for the second dataset\n",
    "x1 = data1[:, 0]\n",
    "ax2.errorbar(x1, means1, yerr=variances1, fmt='o', label='LEM', color='tab:orange')\n",
    "ax2.fill_between(x1, lower_bound1, upper_bound1, alpha=0.3)\n",
    "ax2.set_ylabel('Mean L2 error of LEM', color='tab:orange', fontsize=16)\n",
    "\n",
    "# Increase the axis label and tick size for the second y-axis\n",
    "ax2.tick_params(axis='both', which='both', labelsize=15)\n",
    "\n",
    "# Combine legends\n",
    "lines, labels = ax1.get_legend_handles_labels()\n",
    "lines2, labels2 = ax2.get_legend_handles_labels()\n",
    "ax1.legend(lines + lines2, labels + labels2, loc='upper left')\n",
    "\n",
    "plt.title('Mean and Confidence Interval', fontsize=16)\n",
    "#plt.savefig('Contour_Exact.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "plt.savefig('Sensitivity_parameters.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "8a065ef2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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zRVXXMHJJ5/MmjVreOABXUTdNE3OPPNMjj/+eI4//vgBAVq7di1nnXUWF198MUcffTSXXnopqYbS169fz6mnnsrKlSu58MILOXz4MA899BC33nort99+O2efffaQfX7605+ydOlSTj75ZJ566qmB9j/96U+ccsoprFmzhje/+c0cOHAA0zS54447uOWWW1i9ejVPPPFEyn4Ajz/+OKtXrx7wVDs7daT3zTffzEknncTKlSu54YYbAPD7/WzdupXVq1dz7bXXDrHx9a9/PVOnTh3R5yCUNt19EfojMWwb1u9qJxIteHzGuCYSjdEbkWuUFtu2J/1PTU2NncxLL700pC0dp9/0qL3g8/835Of0mx7N+hipqK2ttTds2GBfdNFFdk9Pj71q1Sr7scces30+n23btn3dddfZ9957r23btn348GF7yZIldldXl93d3W339PTYtm3bW7ZssU844QTbtm37sccesxsaGuxdu3bZ0WjUPvXUU+0nnnhiyHmPO+44e+3atbZt2/b1119vf/rTn7Zt27ZvuOEG++abbx7Sf+/evfa8efPsgwcP2n19ffbpp59uf+ITn7Bt27YPHTpkx2Ix27Zt+0c/+pF9zTXXpDxWun5ve9vb7CeffNK2bdvu7Oy0w+Gw/fDDD9sf+chH7FgsZkejUdvn89mPP/64vX37dnv58uXDXtNMfXL53IXSYf3Ow/ah773ZPvS9N9t/3bTfXrfz8MD3SRjKtpYu+y3/u9a++PanRnwMoNsugft3IX4kKjUP7G1PnUs3XXsurFy5EtM0ue+++zjvvPMGbXvkkUd48MEH+da3vgXoJSY7d+5k9uzZXH311axfvx63282WLUcyMp188snMnTsXgNWrV2OaJq973esGtluWRXt7O294g87adNlll/Gud71rWBv/9a9/cdZZZzFt2jQA3vOe9wycc/fu3bznPe9h37599Pf3p10jmK7fGWecwTXXXMOll17KO9/5TubOncsjjzzCI488wpo1awDo6uri1VdfZf78+dldVGFCYYXCtHT2kfjpt3b2sbWlm6Om16Xdb7ISicbY0Sa5oYdDhlLzwOzG1CWr0rXnytvf/nY+97nPDRpGBe3t//73v2f9+vWsX7+enTt3cswxx3DLLbcwY8YMNmzYwHPPPUd/f//APpWVlQN/u91uIpHCzsd88pOf5Oqrr+aFF17ghz/8YdpMQun6+f1+7rrrLnp6ejjjjDPYvHkztm1z3XXXDbzv1157jQ996EMFfR9C6fLqwdSJVMzWbg50SOaqZHYd7iESldnF4RBhzAPXnruM6nL3oLbqcjfXnrssL8e/4ooruOGGGzjuuOMGtZ977rncdtttA/OE69atA7TXN2vWLFwuF/feey/RaDTrc3k8HqZMmcITT+jlQffee++A95iOU045hccff5y2tjbC4TC//e1vB7ZZljUQMPSzn/1soL2+vn5gvnC4flu3buW4447j85//PCeddBKbN2/m3HPP5Sc/+QldXbrizJ49ezh48OCQYwoTn5bOPtpD4bTbX9rbQUdv+u2TDfEWs0OEMQ9csGYON73zOCrc+nLOaazmpncexwVr8hNBOnfuXD71qU8Nab/++usJh8OsXLmS5cuXc/311wNw1VVX8bOf/YxVq1axefNmamtzW2r0s5/9jGuvvZaVK1eyfv16vvzlLw/bf9asWRiGwWmnncYZZ5wxaB2gYRi8613v4oQTTqC5uXmg/fzzz+cPf/jDQPBNun633norK1asYOXKlZSXl/PWt76Vc845h/e9732cdtppHHfccVx88cV0dnbS1NTEGWecwYoVK1IG37z3ve/ltNNO45VXXmHu3Ln8+Mc/zum6CKWFbdu8dlA/HM3Y8SANbetpbHmWM/7vLGbseBCAaMxm4y6Lfgk0AcRbzBZZ4I8s8BeOIAv8xw9723t4aW8HM3Y8yLHPfQl39MiwadRdxUsnfpUDC94OwJTactbMm4LLNXmzG0WiMZ58rXVAGL/58GY81eX89mNDM7Rlw0Re4C/BN3lEBFEQxoZYzGZbi36YPeqF/x0kigDuaC9HvfC/A8J4uDvMKwc6OWZWcrGHycPOQyHxFrNEhlIFQRh37D7cQ29Yz51Xhfal7JPcvudwD7sPhwpuWykSjsbYeWhyvveRUBIeo9cfvBq4HDgOuM8M+C5P0+9y4MfoZLJx3mYGfGud7V7gp8ApwE7gajPg+1uBzBYEoQiEozG2JwSQ9NbMojq0d0i/3ppZQ9q2HOikrrKMxpqKgtpYauwSbzEnSkIYgb3AV4FzgUxrHJ4xA77Xpdl2H/AMcJ7z8zuvP7jEDPiklpAgTBB2tIUIJwTTvHbcNSnnGF877poh+8ZisHG3xckLp1KVFEk+URFvMXdKYijVDPjuNwO+P6LLkowIrz+4FDgeuMEM+HrMgO/3wAvARfmxUhCEYtMbjrIr6SZ/YMHbeenErxJ1VWADPTWzBwXeJNMfibFhVzvR2OTwoMRbzJ1S8RhzYY3XH2wFDgH3AjeZAV8EWA5sMwO+xIVsG5z2seGnPv37v4NjdkpBmExsb+1OKWgHFrydudt+A8B/zv55xuN09kZ4eV8HK+Z4MvYdz4i3ODJKwmPMgX8AK4DpaE/wvUB8wVodYCX1t4D6VAfy+oNXev3B57z+4HOREn1ylLJTuTFcdY1du3Zx9tlnc+yxx7J8+XK+853v5PXcQuEJ9UfykmYxzn6rF7N1Yi92F29xZIwrj9EM+LYlvHzB6w/eiBbGm4AuIDkWuwFImQrFDPjuBO4EqL1Njf6bs/E3sPvfEO2DW1bAm74MK989qkMmlp2qrq4umbJTX/rSl0Z9rLVr11JXV8fpp49sDVUq4sJ41VVXDdlWVlbGt7/9bY4//ng6Ozs54YQTeMtb3sKxxx6bt/MLheW1g13ke9n11pYu6qrKaK6rzNx5nCHe4sgZbx5jMjYQX7G7CVjk9QcTPcRVTnth2fgb+NOntCgCWLv0642/GfWhpexUfspOzZo1i+OPPx7Q6eiOOeYY9uwZfVkwYWywesIc7OjL+3FtG17cY03IGo6ybnHklIQwev3BMq8/WAW4AbfXH6zy+oNDvFmvP/hWrz84w/n7aOB64AEAM+DbAqwHbnD2vxBYCfy+4G/g0RshnDTEE+7R7aPkkksu4Ve/+hW9vb1s3LiRU045ZWDb1772Nd74xjfy7LPP8thjj3HttdfS3d3N9OnT+etf/8rzzz/Pr3/960Hp5NatW8ett97KSy+9xLZt2waJWJwPfvCDfOMb32Djxo0cd9xxfOUrX+G8887jYx/7GJ/5zGd47LHHBvXft28fN9xwA0899RRPPvkkL7300sC2173udfzzn/9k3bp1XHLJJXzzm9/E6/UOHGv9+vWceeaZKfsBfOtb3+L73/8+69ev54knnqC6uppHHnmEV199lWeffZb169fzn//8h3/84x8EAgEWL17M+vXrufnmm9NeU9M0Wbdu3aBrKZQ2r6VJFJ4PIlGb9bvaCU+gGo7haGxIkJKQPaUylPol4IaE1+8HvuL1B38CvAQcawZ8O4E3AXd7/cE64ADwc+DrCftdAtwNHEavY7x4TJZqWLtza88BKTuV37JTXV1dXHTRRdx66600NEzeLCjjidauPg53FzYReKgvyot7LFbPa0Sp8Z82TrzF0VESwmgGfAZgpNlcl9Dvc8DnhjmOCZyVP8uyxDNXD5+mas8D8bJTa9eupa3tyIqWeNmpZcsGV/EwDGOg7FQsFqOqqmpgWzHKTl1zzTW8/e1vZ+3atRiGkVM/v9+Pz+fjoYce4owzzuDhhx8eKDv10Y9+dNAxTNMc1pZwOMxFF100ILLC+CCeKDwbRqNpbV39bG3p4qjpKeP1xg3iLY6ekhhKHfe86ctQnpSXoLxat+cBKTs1+rJTtm3zoQ99iGOOOYZrrhm68FsoTfZZPXT1Zvfw1vau+3Ff8RBl7pGro9kaYr81vms4irc4ekQY88HKd8P53wW344155unXo4xKjSNlp0Zfduqpp57i3nvv5e9///tAMM9DDz2U03URxpbEROGZqK5ws7C5jvqqctbMn4J7FOL48r7xW8NRvMX8IGWnyF/ZKVngP/6RslOlw862EFsOZBd0s2peI9Pqj0wTtIf6Wbdz5NltqsrdnLRwCpVl4ytt3NaWLrZn+TAhZafSUxJzjBMGEURByAuRpEThwzGtvnKQKAI01lSwcq6HDbvbiY0g2LQ3HOWF3RbHzx8/NRxLct2i4ZmKLvxwDtAKXIdh/TJFv7OBL6PTeh7GsLxJ270kFYjAsApWIEKGUgVBKDl2HBqcKDwdbpdi2czUwTJNdZUcN6dxxAE57SFdw3G8sKMtRLT05ha/D/QDM4BLgdsxPKnSdHYDP+FIJrNk7gPWAU3AF4HfYXim5d9cjQjjMMgw8+RCPu/SoC8SZWdbdp7Pomm1w1bJmFZfyYo5nhGL43ip4RiOxthVanYanlp06s7rMawuDOtJ4EHgA0P7Ws9iWPcC24Zu8wwUiMCwejCsgheIEGFMQ1VVFW1tbXKznCTYtk1bW9ugpS1CcUiXKDyZ2soy5k+tydhvRkMVx8wa+ZrVLQc6aQ/1j3j/saBEvcWlQATD2pLQNpLCDsuBbRjWmBWIkDnGNMydO5fdu3fT0iKlHCcLVVVVA8kPhOKQS6LwY2bVZ70Yf3ZjNdGYzSv7cx8aLfUajsXyFptrVBmG57mEpjsxrDsTXtcBHUm7pS3sMAzpCkQULHG0CGMaysvL02ZpEQShMGw92J1VsMysxioaaypyOva8qTVEY3ZOCQPixGs4nuidirvEgnGK5S22huwIhnXiMF1yKuwwBsfJGhlKFQShJOjoDXOgI/Pi+vIyF0tGmJ3G21yLt3lkKwziNRxLiZKcWzzCFqAMw7MkoW0khR02AYswPGNWIEKEURCEkiBbT+6o6XVUlI381nXU9DrmN2Wem0xFqdVwLNG5RY1hdQP3AzdieGoxPGcA70AXmE/q63FheKqAckBheKowPBXOcQYKRDjtBS8QIcIoCELRaevq41BX5gCXxppy5jRWZ+yXiaUz6pkzZWTH2drSRWtX/ktg5Up/pKS9xThXAdXAQfSSi49jWJswPGdieBKfhF4P9AAPAfOdvx9J2H4JcCK6QEQAuBjDKlgAiGS+IXXmG0EQxo5/bWujM0NOVKXg5IVTqa8qz8s5bdtm096OEeVGLXMrTvJOpbayeGEarx3sGpX3Kplv0iMeoyAIRWW/1ZtRFAHmT63JmygCKKVYPruB6Q2VmTsnEYnabChiDcdx4i2OW0QYBUEoGjpReOa5xapyNwtHGDQzHEopVsz20FSXW4QrQKhf13AsxqjbzkPdpTu3OAEo+nINrz94NXA5cBxwnxnwXZ6m32XAp4Al6LUxvwS+YAZ8EWf7WuBUIP7ouccM+JalOJQgCCXCnvYeQv2Zy6ItnVlHmbswz/Eul2Ll3EbW7zqcc0HkYtRw1N5idms9hZFRdGEE9gJfBc5FT9Kmowb4f8C/gGno1EKfQ0/ExrnaDPjuKoyZgiDkk0g0xvYs5sia6yuZXl/YjERul2LV3EbW7WrHCuUmjmZriLrKcmZ6xiZrkniLhafowmgGfPcDeP3BE4G0aUfMgO/2hJd7vP7gL4CzC2yeIAgFYuehEP0ZEoW7XYplM8bGGytzu1g9r5HndxzOas4zkZf3dVBT6aYhj3OgqRBvcWwoujCOgtczdIHnTV5/MAC8AnzRDPjWptvZ6w9eCVwJEBlhzTZBEEZGfyTGjixKJHmba6muGLs0bOVuF2vmT+E/Ow7T3Ze9OEZjNht3WQWv4Sje4tgwLoNvvP7gFeg1Ld9KaP48sAidP+9O4E9ef3BxumOYAd+dZsB3ohnwnVhWYimeBGGis7018w2+ptLNgiyShOebijIXa+Y3UpOjIMdrOMYK9KDdH4mx65B4i2PBuPMYvf7gBcBNwJvNgK813m4GfP9K6PYzrz/4XuA84LaxtVAQhOHo6Y+ypz2zt3jMzIaiFQmuKndz/IIpPGcepjecOTgoTryG42iqeaRj56Hsqo4Io2dceYxef/C/gB8B55sB3wsZutuAuIKCUGJsbenKmCh8pqeKKbW5L6HIJ1ocG3NOP7fncA+7shgmzgXxFseWonuMXn+wzLHDDbi9/mAVEIkvw0jo90bgF8CFZsD3bNK2RuAU4HH0co33oOcgP13wNyAIQtZ09oYzZpopcyuWzKgbI4uGp6aijOMX6DnHcIZAoURePdhJXWVZ3sR9R5t4i2NJ0YUR+BJwQ8Lr9wNf8fqDPwFeAo41A76dwPWAB3jI6w/G+z5hBnxvRSee/SpwNBAFNgMXmAFfYoFMQRCKTDaJwo+aXlfQAJZcqassY838Rv6z43DWgS+xGGzcY3FKHmo49kdi7JZI1DFFcqUiuVIFYSw41N3P8zsOD9unobqck7xTsi5APJa0h/pZt7M9J8+tvqps1DUcXz3QyY62/Kd/k1yp6RlXc4yCIIxfMnmLSsHRs+pLUhQBGmsqWDWvEVcOd83O3ggv7R15DUfxFouDCKMgCAXnYEcvHT3DZ5SZN7Wm4AvkR8vU2gqOm5ObOB7o6M0qw08qZG6xOIgwCoJQUGzbzugtVpa7WFSAJOGFYFp9Jctne8jFsd3W0kVLZ241HPsiUfEWi4QIoyAIBSWbROFLZ9QXLEl4IZjRUJXTWkXbhhf3Wjll09nZFhJvsUiMn2+iIAjjjmjMzjiMOLWughkNY5OAO5/Mbqxm2czs87hGc6jhKN5icRFhFAShYOw8FKIvnF4IXC44OgdxKTXmTa3Jac1ltjUcd4i3WFREGAVBKAj9kRg72ob3Fr1NtdRUlMJy6pGzoKmWhdOynx9t6+ofds61LxJlj3iLRUWEURCEgmC2dRMZZkF8TYUbb9P4CLjJxOJpdSxoyj7h+Y62UNoMQOItFh8RRkEQ8k5vOMruw8MvSl82s75oScILwZIZ9cyZMlyt9cG8vK+Djt7BS1jEWywNRBgFQcg7rx0cPlH4TE8VTXWVY2fQGHHMrAZmerILJIrXcOyLHInYFW+xNBBhFAQhr3T2hjnQkT5RuNutOGp6aSQJLwTLZzcwvSE70U+s4SjeYukgwigIQl7Z2tLNcEGXR02rG3Vi7VJGKcWK2R6a6rKrrNEeCrN5f6d4iyVExnAwrz94GrrixZnALKAHeBEIAj83Az6roBYKgjBuaA/10zpMhpf6qjLm5jAPN15xuRSr5jayblc7h7v7M/Y327rp6g0ztXbiDS+POYZnWM3CsDJq1rDC6PUH/wzsBR4AvgYcBKqApcDZwANef/B/zYDvwVG8DUEQJgivDrMMQScJbyjZJOH5Roujh3W72rFCw+eJbenso62rjwq3m7qq8b18ZRCGZyrwY+AcoBW4DsP6ZYp+CggAH3Za7gL8GJbtbH8j8C3gKOc4AQzrzhTHyahZGJ7/xbCG1axMn8AHzICvNamtC3je+fm21x9sznAMQRAmAQc7e4cVgDlTqvFUl3aS8HxT5naxel4jz+84TGdv6nRw/dEYbd19xGztOS6dUU9F2YSZ5fo+0A/MAFYDQQzPBgxrU1K/K4ELgFWADfwV2A7cgeEpB/4A/H/AncCJwGMYnn9hWBuSjvMBDGtYzcLwZNSsYYUxhSiOqE8mvP7g1cDlwHHAfWbAd/kwfT8DfB6oAX4HfNwM+PqcbV7gp8ApwE7gajPg+9to7RMEYXgyJQqvKHOxeNrEDbgZjnK3izXzp/CfHYdT5kpt6ewbiOCNOCn0lkyvG/9LWQxPLXARsALD6gKexPA8CHwA8Cf1vgz4Noa129n328BHgDuAqUADcK/jQf4bw/MycCwwWBiHimIKuzL3GfFjidcffGGk+6ZgL/BV4CcZznku+oK+CVgALAK+ktDlPmAd0AR8Efid1x+clkc7BUFIwV6rl1Bf+kThS2fUUz6OkoTnm4oyF2vmN1JTMTjoKO4tJtITjrIzwxrQUqC5RpVheJ5L+LkyqctSIIJhbUlo2wAsT3G45QwWuSP9DOsA+t7+3xgetzOHuAB4cshRDM88DM+vMDxPYHi+4Hib8W1/zPa9ZZpjfGeaTQqYme1JMmEGfPc75zsRmDtM18uAH5sB3yan//8AvwD8Xn9wKXA8cI4Z8PUAv/f6g/8P/cRyR75sFQRhMNGYzbaW9N7ilNqKrNf2TWSqyt0cv2AKz5mH6Q3rh4hEbzGR9lCYA+W9JZ1cvTVkRzCsE4fpUgckV2m2gFTJceucbYn96jA8yvES70PPO37H2f5xDGtXiuP8BPg98E/gQ8DjGJ7zMaw2tJhmRaY5xl+jhSdVDHExPrHl6EnVOBuAGV5/sMnZts0M+DqTtqd6OsHrD16JHtcmIiHSgjBidg2TKHy8JwnPN1ocG3nOPExXX2SIt5jIPquXqnL3eJ6X7UIPgSbSAHRm0bcB6MKwbAzP0cCvgHei5x6XAP+H4dmLYQWTjjMNw4o7Qp/E8Lwf+AeG5+2k1rGUZBLGjcC3zIDvxeQNXn/wzdmeJI+keqoA/QSSvC2+fU6qA5kB353oiVxqb1OijIIwAsLRGOYwicLnT62ltnICRVnmgZqKMo5fMIUH1u0ZNjsQ6OokS6aP23WfW4AyDM8SDOtVp20VkBx4g9O2Cng2Rb8VwBYM62Hn9SsYniDwVvQSjETKMTxVGE4iWsP6OYZnP/AwkHVi3kyD/v+Poa5wnAuzPUkeSfVUAfoJJJenE0EQ8oDZmj5ReHWFm0XNEyNJeL4pcyk8NWWUZQiwidezjGRS0FLEsLqB+4EbMTy1GJ4zgHcA96bofQ9wDYZnDoZnNvBZ4G5n2zpgCYbnjXpo1bMYeBvacUvmLnTwZaIdfwPehV7LmBXDCqMZ8D1hBnw702x7LtuT5JH4U0WcVcABM+Brc7Yt8vqD9UnbUz2dCIIwSnrDUXYNEyQy0ZKE55MdbSGqysrwNteS6RL1RWLsaAtlrOFYolwFVKPXE96HnhvchOE5E8OTODH9Q+BPwAscWYz/QwAMaytwBfBdtKP2OHoe8a4hZzOsWzCsx1O0r8Ow3pKt0aoULrbXHyxDD+vegA6++QgQMQO+SFK//0I/RbwRHcl6P/CsGfD5ne3/REcqfQntZv8UWGIGfC3Dnb+2ttbu7h6+bpwgCIN5aW8He9tT5/ac3lDJyrmNY2vQOKE3HOXpra0Dw6idvWG2t3aTKdRhen0lsxvzlzXomw9vxlNdzm8/dvqI9ldKhWzbnpBDAqUSP/0ldNoePzqVTw/wJa8/ON/rD3Z5/cH5AGbA9xfgm8Bj6HWKO9BiGucS9OLPw+gsChdnEkVBEHKnqy/CPiu1KLrdiqUzJOAmHWZb96C5xfqqchY0ZfYcD3b2cTiUOb2cMHqy8hi9/uBCM+DbnqltvCIeoyDkxoZd7bSkyYm6dEY983Mo2juZSPYWE2kP9bPjUGjYBOwuBUdNr6OmYvQBTRPaYzQ8CzGs7Rnb0pCtx/j7FG2/y3JfQRAmEO2h/rSiWFdVxrypEz9J+EhJ9hYTaaypYN6U4R8oYjZsb+0mHB2HwThjy6g0K9MC/6PR6wA9SYv9GyjOOkZBEIrMcKnfjpk5eZKE50pvOJp2TjbO1NoKYrbN7mHqMoajNmZbN4un1eGSaz0YveZxOeDB8IxYszL548vQYbGNwPkJ7Z3oABlBECYRLZ19tKdJFD67sRpPzbhdjF5whvMWE2muqyRm2+xtT1/subtPFzWeN1WGrJPIi2ZlSiL+ALq01GlmwPfMCIwUBGGCMFyi8PIyF0tmTM4k4dmQjbeYyPT6KmIx2N+RXhzbuvuprnDTXCc1HAcwrAfQpaVOw7BGrFnZzjG2ef3BR73+4IsAXn9wpdcf/NJITyoIwvhjn9WbsjoEwJLpdZM6SXgmsvUWE5npqWJ6/fCit6e9h6405awmOW0YnkcxPHpRv+FZieHJWrOy/Sb/CLgOCAOYAd9G9NIIQRAmAbGYzbaW1JHbU2rL87q+bqKRq7eYyOzGaprrKtJut50ajn2R9JVNJimDNAvDykmzshXGGjPgezapTR5TBGGSsOtwaKAiRCIuFyybmZyJUUhke2vu3mIic6fUMLUmvThGYjZma4iYFENIpAbDGrFmZSuMrV5/cDFOdnKvP3gxsC/bkwiCMH4JR2Nsb03tLc6fWkOdJAlPS284mjYRQi7Mm1pN4zBVNnrCUXYeKv0ajmNIq5NTVT8tGJ6cNCvbb/Qn0JUojvb6g3uA7egMNYIgTHB2tIVSJgqvKnezsFkCboZjtN5iHKUU85tqiLV109GT2vFp7wlzoKO0aziOIQOaheHJWbOyEkYz4NsGvNnrD9YCrqSah4IgTFB6w1F2pfFEls2sxy1JwtOSL28xjkspvE21bG/tpjNNwM0EqOGYHwxrG/BmDE8t4MKwctKsrIZSvf7gp73+YAMQAm7x+oPPe/3Bc3K3VhCE8cT21m6iKeauptVXMi1DxORkJ1/eYiIupVjYVEttZfr6jDsPpZ4PnlQYnk9jeAY0C8PzPIYna83Kdo7xCjPg6wDOAZqAD6CTdAuCMEHp7oukjKZ0uxTLZkqS8OHIt7eYiMulWNhcS01FanEc1zUc88cVGNaINStbYYyPl5wH3GMGfJsS2gRBmIBsbelKmdB6YXPteK0oP2YUwltMpMzlYlFzLVXlqW/h47yGYz4YpFkYVk6ala0w/sfrDz7inORhpxjwpH4cEYSJjBUKc7BjaKLw2soy5ksasmEppLeYSJnbxeJpdVSWpb6Nd/ZG2Gelz5wzwfkPhmdAszA8OWlWtsL4IXStxJPMgC8EVAD/naulgiCMD15rSR2rcMyselwScDMs21oK6y0mUu6IY0WarEMHO/s41D0pazgOaBaGlbNmZRuVGvP6g9uBpV5/MO+xwF5/cCrwY/R4cCtwnRnw/TJFvz8DZyY0VQCvmAHfcc52E5gBxGeenzYDPgkSEoQcaO3q43D30EThsxqraBxmobkAPf1R9ncU3ltMpKLMxeJptbzW0kU4xbKa3YdDVJW78lLDcdxgWDEMz3ZgKYYnZ83K6kp5/cEPA58G5gLrgVOBZ4A35nrCNHwf6EeL2mog6PUHNzhzmQOYAd9bk+xaC/w96VjnmwHf3/JklyBMKtIlCi9zK5ZMl4CbTBR6bjEdleVuFk+r47WDXUSSoojjNRyXzqifPPlsDc+oNCvbq/Rp4CRghxnwnQ2sAdpzNDUlztrIi4DrzYCvywz4ngQeREcRDbefF+093pMPOwRB0NUcUiWlXjKjnoo0c1mCphjeYiJV5W4WTaulLMVQd7yGY2zyBOMMaBaGlbNmZftN7zUDvl4Arz9YaQZ8m9F1r/LBUiBiBnxbEto2oItNDscHgSfMgM9Mav+F1x9s8fqDj3j9wVXpdvb6g1d6/cHnvP7gc8lPWIIwGUmXKLyxppw5kiQ8I8XyFhOpqShjYXMtqaaB4zUcJwm9GE7kkeGpxLBy0qxsB513e/3BRuCPwF+9/uBhYEdudqalDuhIarOATOM2HwS+mtR2KfA8Oiz30+gI2qPNgK89eWcz4LsTnTKI2tuUKKMw6dl9uIee/sELw5VC1ixmQbG9xURqK7U4bm/tJvmZv627n6py92RIzrAbw9OIo1kYnpw0K9vgmwudPw2vP/gY4AH+nJudaekCktPzN6ArLqfE6w++DpgJ/C7JzqcSXt7k9QcvQw+3/ik/pgrCxCQSjbG9bai3OH9qDfVVkzy9WBaUgreYSH1VOQuaatnRNlQc91o9adc/ThgMa0CzMDw5a1a2KeHujf9tBnyPmwHfg8BPcrFzGLYAZV5/cElC2ypgU5r+AJcB95sBX+py4kewkUQEgpCRHYdChCOD7+yV5S4WNtcWyaLxQ0//2KxbzBVPdTnzp9agku6Atq0Tw0/o+UbDc++Rv63HMaycNCvbodRB831ef9ANnJDtSYbDDPi6vf7g/cCNTvTrauAdwOmp+nv9wWrg3cCFSe3zgXnAv9GC/0mgGXgq+RiCIByhLxJlZ9vQROHLZtRTNlmiGEfB9tbulBmCSoHGmgpiNkNKUkViNr3hWOEz4xieIUvxMKwhS/EwPAqdsu3DTstdgB/DipeNcgNfAa5AT7O9BpyNYbWnOfPgGBW9f9aaNawwev3B64AvANVefzA+D6jQSyvuzPYkWXAVWs0PAm3Ax82Ab5PXHzwT+LMZ8CXWtrkAHV30WNIx6oHbgcVALzpE961mwNeWRzsFYcKRKlF4U10F06V8UUZK1VtMZGptBbZtsysh8Obolr/waM//UNEThlvmwZu+DCvfXYjTD1mKh+HZ4KRoS+RK9L19FXqk76/oUlF3ONu/gnaWTgN2ooVvaFofwzOgWRieEWuWyuaJwesP3mQGfNdle9DxRm1trd3dnboQqyBMZEL9EZ7Z2jbI43G7FKcuaqI6TZJq4Qib9lrsax8fadcOdvayt72Xo1v+wrnbvk55LMHu8mo4/7s5iaNSKmTbdvqxdl3y6TCwAsPa4rTdC+zBsPxJfZ8G7saw7nRefwj4CIZ1KoZnCrALWIVhbc3KOMNzE4Y1Ys3KNvjmOq8/OAVYAlQltP9jpCcWBKH4bD04dBjQ21wropgFPf1R9o+jXKTT66uI2XDmf34wWBQBwj3w6I05CWNzjSrD8DyX0HTngLBplgKRAVHUbADekOJwy51tif3iw6HHARHgYgzPZ9CrGL6DYX0/rXGGdZ0jqIM0C8PKSrNKJfONIAhjTEevrvieSE2lmwWSJDwrtrWmrj5SysxsqKKh/0DKbba1O6dIxdaQHcGwThymSy5L8eqcbYn96py5x7noqNKlwEK02D2K4dmCYf015ZnHe+YbQRCKw6sHhgZ1Hz2zQZKEZ0GoPzKuvMVE9tGUsv0Azfk+VS5L8ZL7NgBdTvBNfHL0RgyrB8PaCPwKXTkjHeM+840gCGNMW1cfh5OqLsz0VDG1VpKEZ0MpR6JmItD/bkL24M85ZFdwU/+78n2qLUAZhiebpXibnG2p+m10fide8UxXf1SZb7IVxuTMNw+Qv8w3giCMMcmJwsvciiUz6tL0FhIZz94iwJPVb8Qf/jC7Y83EbMXuWDP+8Id5ruEt+T2RYXUD9wM3YnhqMTxnoJfi3Zui9z3ANRieORie2cBngbud42wFngC+qEXOcwxwCfB/w5w9OfNNTpo1msw3f8n2JIIglA77rV46kxKF64K3EnCTDePZWwR455o53PPM63mw/3UDbdXlbm46tyCDgEOW4mFYmzA8ZwJ/xrDiT2M/BBYBLziv73La4rwXvR6yzTnW9RjWo2nPmjrzTdaale1yjeOAo52XL5sB34vZnmA8IMs1hMlCLGbzz21thBJyojZUl3OSdwoqOUWKMIRUy1vGI//c1sbdT5tEYjZzGqu59txlXLBmTk7HyLhco5gYnkGahWHlpFnDCqPXH/QADwDz0eGzCh06uxN4hxnwJUccjUtEGIXJwq5DIV7ZfyT2QSk4aeFUGiQfala8uMca18OoiXzz4c14qsv57cdSJhnLSEkKo+EZVrMwrKw0K9Mc4/8AzwFHmQHfhWbAdwE6VPbfwNdGZrkgCMUgEo2xvXXwA+DcKTUiilkS6o8MWd4ilBwDmoVhXYhhXcAINCuTML4Z8JsB30B2YefvLzjbBEEYJ+w8FKI/IVF4ZbmLxdNK64G/lNnWMr7nFicJb0bnWD3yRdd/56RZmYSx3wz4hpTzdtr6sj2JIAjFpT8SY0dSIumlkiQ8a8RbHDf0Y1hDNMtpy1qzMkWlVnn9wTUMLd2kgAlf6VIQJgrbW7uJRo+4O1PrKpghScKzRrzFcUMVhmfUmpVJGPcD/zvMNkEQSpye/ih72o94iy4XHD0zVVYuIRXiLY4r8qJZwwqjGfCdlYNBgpCWSDTGhT94GpeCP1x1hqQdG0O2tnQNqi7vbaqlpiLbUqyCeIvjCMM6Kx+HGXaCwesPvi7D9gavP7giH4YIExcrFObZ7Yfoi0TpCUf51/ZDWKFwsc2aFHT2hgctL6ipcONtkoCbbBFvcZxheIbVLAxPA4Yno2Zlemy8yOsPfhOdMeA/QAu6hMdRwNnAAnTqnlHh9QeHVHk2A74hVZ69/qABfJHBk6grzYBvm7N9tXOcY4CXgQ+ZAd/60donjAzbtjHbQmxr6eKZrW1sa+kmErP5xC+f553Hz+HdJ85j8bQ63OI9FoxXk1K/LZtZL956Doi3OO64CMMzas3KNJT6GUe0LgLeBcxCZzp/GfihGfA9OZp3kMCQKs9ef3CDGfClSjb7azPge39yo9cfrEAv7LwV+AHwUeABrz+4xAz4+pP7C4WlNxzlxT0W7aEw/9zWxj3P7CDiVIk/1N3PPU/vABvOWjadY2bV01QnsVz55lB3P4e6jnz1ZzRUyXXOge4+8RbHHYb1GQxPWs3CsLLSrIwTDWbAdwj4kfOTd7z+YC36TawwA74u4EmvP/gg8AHAP+zOgzkL/X5uNQM+G/iu1x/8HLr+luR1HUP2W71s3t9BxImCvH/dHvqjsUF9+qMx7l+3h1MXNbFuZzszPVUsnVFPRZksH8gXiYnC3ZIkPGfGe07USYthjVqzSmEGfikQMQO+bKo8A5zv9QcPAfuA75kB3+1O+3JgoyOKcTY67UOE0esPXglcCQx4MsLoiERjbN7fOSRl1qHu1A57Yvt+q5e27n6WzahnpkeWEYyWAx29dPQcmcc9alodVeWSJDxbxFuc3JSCMOZS5fk3wJ3AAeAU4Pdef7DdDPjuY2gF6OGOgxnw3ekci9rblCjjKGkP9bNpbwc9Ccmp40ytrUgpjsm1/8KRmM5F2dHL0TPr5UY+QmzbZmuCt1hfVcbcKdVFtGj8Id7i5KYUhDHrKs9mwPdSwsunvf7gd4CLgftyOY6QP2zbZltrN+YwNxJd5mbHoOHUCreLd6bJ5t/a2cczoX6OmlbHvKk1hTB7QrOnvWegeoZScPSsBqmckQPiLQpZC6PXHzwd8CbuYwZ89+TBhi1AmRMk86rTlq7KczI2RzIcbAI+6/UHVcJw6kp0YI9QAHr6o7y418q49OLURU0AA2VuptZW8M41cwbaUxGN2ryyv5MDHb0cM6uB2spSeIYrfaIxm20tRxKFz5lSjadakoTngniLEwTDM0SzMKysNCuru43XH7wXWAysB+JjZTa66vKoMAO+bq8/eD9wo9cf/DA6KvUdwJBaKF5/8B3AP4B24CTgU+jksABrHds+5fUH7wA+4rT/fbQ2CkPZ297DKwc6B6UZG443LJvGh85cSH9EV3iIZLlfeyjMv7a34W2qxdtUK0sNMpCYKLyizMXiaRJwkwviLU4QDM+oNCvbx/ATgWOTAlvyyZAqz2bAt8nrD54J/NkM+OL/3Zc4/SqB3cA3zIDvZwBmwNfv9QcvQFd+DqDDcy+QpRr5JRyNsXlfZ9Y3D5cL5k2pYWFz7UDC6tmN1exoC7HrUIhoFoFPsZheT3ago49jZzXgqREPKBX9kRhm2xFvcemMesolSXhOiLc4YTgROBbDGtGnma0wvgjMREeC5h1nScgFKdqfQAfVxF+/N8Nx1gEn5Ns+QXO4WwfY9IaHBtikYmpdBctm1A8ZBi13uzhqeh3zplZjtobY0x4alLIsHd19EZ7bcYh5U2skMUAKzLYjicKn1FZIdG+OdIm3OJEYlWZlK4zNwEtef/BZErLOmAHf20dyUmF8EYvpAJsdbdk9TVeVu1k6o47pGao3VJa5WTaznvlTa9ja0sWBjt6Mx7dt2NkWoqWzj6NnSmKAOL3hKLsP60ThkiR8ZGyXLDcTiWbgJQzPIM3CsLLSrGyF0cjZLGFCEOqP8OKejkFr4tLhcsECZy4wF2+uusLNijkevM21bD3YRUtn5rJpPf1RSQyQwGsHjyQKnz+1VoKVcqSrL8LBTvEWJxDGaHbO6r/HDPgeH81JhPHJnvYetuzvzGoesLm+kmUz6qmuGPnaw7rKMlbNa8QKhXmtpZPD3ZnFeL/Vy6HufpZO4sQAnb3hgSHA6go3C5slSXiuiLc4wTCsUWlWtlGppwK3oZNzVwBuoNsM+JLXDQoTgHA0xsv7OjjYkdlzq6lws3RmPc15HNL01JRzwoKptHX18drBLjp7hxbkTqR/kicG2JpwU182s17mXnNEvMUJiOFJqVkYVlaale14y/fQEaG/RUf7fBCdyk2YYBzq7mfTXou+8PDRMG6Xwttcy4KpNQVbQtFUV0lTXSUHOnrZerBrYNF6OiZjYoDD3f20OkPP0xsq8/qAMlkQb3FCMirNynpixgz4XgPcZsAXNQO+nwL/laOhQgkTi9m8eqCT53ccziiKMxqqOG1xEwubx2ZdYfx8x8xuoLJ8+K9sPDHAc+YhuvuG9zQnAq+16NRvbrdi6QwJuMkViUSdwBjWa4Abw4piWDlpVrYeY8gp67Teqc+4jxxEVShtuvsivLjHyjhkWVtZxrKZ9UNynI4FSinmNFYzq6GKXYdDGZMETIbEAAc7eweyDi1uliThI2F7QpYgYUIRwvBUAOud+ow5aVa2wvgB56BXA58B5qFLRQnjnN2HQ7x6oGvYAJsyt2JRs153WOycmy6XYkFTbVZJAuKJAQ529nHMrIYJlRrNtu2BslJ1VWXMmypJwnNFvMUxQNdGHFSEHsMaUoQew6PQiVk+7LTcBfiHLNA3PB8EfgZ8BMO6a5gzj0qzso1K3eH1B6uBWWbA95VsDy6ULv0RHWCTaWnErMYqjppeR2VZaXkjuSQJ6OqN8Jw5sRID7LV6CfXpOddjZkqS8JGwraUrcydhtAwpQo/h2YBhJefCvhKd5GUVOnXbX4HtwB0DPQzPFHQK0Mx5tA1rB4anGpiFYeWsWVm5ll5/8Hx0zrm/OK9XO8WEhXFIW1cf/9zWNqwo1leVcZJ3Kstne0pOFBOJJwk4bVEzMz1VpNOHeGKAf25ro60rc7RtKaMTheub+uzGakmRNwK6+iJZRV0Lo8DwxIvQX49hdWFYTwLxIvTJXAZ8G8PajWHtAb4NXJ7U5ybgu2jPM9O5B2kWhmc1hidrzcp2zNUATkYn78YM+NYDC7M9iVAaxGI2Ww50sm5n+0Ci6WTKy1wcPauekxdOze8Nd+Nv4JYVYDTq3xt/k79jcyRJwCmLmphWnz4yM54Y4MU9FuFoFnnoSpBdh0L0hWOUl7lYMkOShI8E8RZHT3ONKsPwPJfwc2VSl6VABMNKLkK/PMXhljvbUvczPCejo0vvIDsMEjQLw1pPDpqV7Rxj2Az4LK8/mNgmAc7jiC4nwKYrTYCNUtr7OGp6Xf4TT2/8DfzpUxDu0a+tXfo1wMp35/VU2SYJGK+JAcLRI4nClxTis5oEdPaGxVvMA60hO4JhnThMl1yK0CcXmreAOmfu0QX8ALgaw4pheLIxL4xhWUl9s9asbIVxk9cffB/g9vqDS9Dlnp7O9iRCcdl1KMSrBzvTzsE11pSzdGY9DVUFGpJ79MYjohgn3EP0r1+ha8mFVJW78j5cm02SgPGYGMB0onEba8qZ3SgBNyNhe6tEoo4RuRSPT+7bAHRhWDaG5ypgI4b1zxzOvQnD8z7AjeHJWbOyFcZPAl9EJ2O9D3gY+J8cjBSKQF8kykt7O2jrSl15q8IZipvlKewN1rZ2k2rqz9W5h39vP6T/dun5wrhIHvntprLcRVWZe0T5ULNJEjBeEgP0hqPsOhzSScJnSdKpkSDe4piyBSjD8CzBsDIVod/kbHs2Rb83AW/A8JznvJ4KrNHzhtbVac49Ks3KNio15Jzki9keWCguLZ19vLyvI+VcolIwb2oNixJqJBaKaMwmWjubiu49Q7bFGuZw9Kx6esNRevpj9ISjdPVF0w5/ul2KyjIXleVuKstcVJVrAa1KeJ1uaHFGQxXT6yvZa/WyraVrSBKDeGKAAx29HDOroSSTcG9t0YnCvc011JWgfeMB8RbHEMPqxvDcD9yI4Rm2CD26gPA1GJ6H0EOen0WndAMdhJM433E/8Dv0MpB05x6VZg3735Up8jRfZae8/uCQtS5mwDdkrYvXH7wWHb20wOn3AzPguzlhu4kOC467BU+bAd85+bBxvBCN2bx6sJPdh3pSbp9SW8GymfVjcmPtDUfZsKudacd/joX//AIqcTi1vBr3m29g7pShHlo0ZtMTjtLTH9Wi6fzdE9avh0sN53arI6JZ5nib5W6qHEGdUV85kCTAbAsRTnpwiCcGWNhcV9B0d7nS1Rdhv9VLVbmbhc0ScDMSxFssCkOK0GNYmzA8ZwJ/xrDiX+YfAouAF5zXdzltYFjtg45oePqBDgzLIplMkad5Kjt1GrAL7Yr+C1KOiOWDIWtdvP7gBjPgS3a5FTrn3UZgMfCI1x/cZQZ8v0roc74Z8P2tQHaWNJ29YV7c05EyFVpVuZslM+qYkaFGYr7o6A2zYVc7TbWVeM/+b9S0Oj3XaO0Gz1x405fTBt64XYq6yrK04h2Oau+y1xFLLZixASEN9UUH1vilosytqCxzU1vh5lA4Slt3P26lKHcrKtwuyt0uth7sGvAeSyExwNaDXdg2LJ05MdZhFoNtkuVm7DGslEXoMaxBReidhfz/n/OT6ZhnDbM1L5qVSRhnAm8B3gu8DwgC96UQrBHj9Qfja11WmAFfF/Ck46l+APAn9jUDvm8mvHzF6w8+AJwBJArjpGRnW4jXWoYG2Lhcuj7fwubcaiSOhoOdvWza28Hi5jrmNzke4cp35y0CtdwRr3TBQn2RKL3O0OyA5xnRQtobiRKJ2kSi+uHBpRSNNeUc7Ohjd3vfwPUrcynK3S5e2N3O/KZaFk+ro7YywQstc4+ZN9ke6qels49p9ZVMrx8/EbSlRGdvOKs6n8K4J6VmpUgoMCzDCqMZ8EXRCyT/4vUHK52TrfX6g18xA77vjcjsoSwFImbAl7zW5Q3D7eT1BxVwJnF3+wi/8PqDLmAdcK0Z8G0YsrPe/0p0tgUiWdQbLFV6w1Fe2tfBoRQBNk11eti0pmLs5qN2tHWzvbWb4+Z4ilbpobLMTWWZGw9DhdO2bfoisUFDsz3hKNPrK7F6wuxoC3Gou59IzCYSi9IThhd2W2zZ38ncKdXUJ4hxRZkrYa5z8LyntsGVF/F87WAXbpdi2UxJEj5SxFucJBjWgGZheAY0C8PzFQwra83KeMd0BNHnnMCLzjzwh5HYnIZc1rokYqDXt/w0oe1S4Hm0+/xp4GGvP3i0GfC1J+9sBnx3AncC1N6mxqUyHuzs5eV9nUPmyWoq3CyZUT/sQvd8Y9s2L+/rpD3Uz0neqSUZvAI6GXlcyKak2B6L2bR297F5Xyf72nvoj8boj+ifnYdC1FeVMbuxmjKXa6A9XfJ1peLiOTRIKO55Vpa5Uqdz2/gbePRGbGs3y2tm0XXGF6g6OlXCECET4i1OMrQgjkqzMgXf3AOsAB4CvmIGfC+OyNDhyWWtS9yuq9FzjWeaAd/AN94M+J5K6HaT1x+8DO1V/il/5hafqJPBZs/hwQE2Y1EjMRXhaIyNu/U8+EkLp47rRecul2J6fRXT66ucJAFdHO4+4o3HYjYomDOlmrrKsiHBQYkVP2wb+sIx+sIxOlLHQg2IZ1wsq8pdTNn6AE1//xwq0oMCqkN7qVp7LdRX5j0hwmRAvMVJhOEZpFkY1og0K9Nj/fuBbrT39amEzDcKsM2ALx+LqbYAZV5/cIkZ8GVa64LXH7wCPff4ejPg253h2DaFCxgqCh29YV7cYw0JLpneUMnSGWO/SL2nP8q6XYeZUlPB0TPrJ1Qya50kYMqgJAHxB449h3torq8ckhggHI0NiOWQec5wdEglkETxtNDLVOY++TVUZLCSqnCPDl4SYcyJDvEWJxuDNCsh840CbAwrK83KNMdY8Ed/M+Dr9vqD9wM3ev3BYde6eP3BS4GvA2ebAd+2pG3z0aVF/o0eYv0k0Aw8lXyc8Yht2+xoC7GttWtQgE1NpZtlM+ppKsJ8Xnuon427LRY215b0wvjREk8ScLCjl9daugYeSlIlBogHBtWnCQzqj8SOzG0mRtU6gUGxGFSF9qU2xMr0HCgkI/UWJxmGlRfNKpWJoCFrXcyAb5PXHzwT+LMZ8MXDer8KNAH/TvBef24GfB9Dz0nejl7G0YvOrP5WM+BrG7N3USB6w1E27e0YNKTndisWNdcyb0px1trtt3rZcqCT5bMbiiLKxWB6QxXTkpIE5JoYoKLMRUWZK+0SkN5wlFjDHNwdKUTQMzcfb2PSIN6iMFKUbY/LuJO8Ultba3d3l+aT5cGOXl7a1zFo7mqmR9dILFZuz60teo3f6nmNYxrxWkrEYvaQJAEuF/lJDJCcdB2gvBrO/64MpebAhl3tIozD8M2HN+OpLue3H0uViCYzSqmQbdu1eTarJJicd7VxQCQa45UDnexrP1JhvK6qjKNn1tNYU1EUm2Ixm5f2ddAfjXGSd3wH2YwWl0uxoKmWOY3V7DgUYuehENGonZ/EAHHxyzIhgjAU8RaF0SDCWIJYPWE27bEGUp+VuRWLp9Uxd0p10YJb+iJRNu62aKgqZ/lsqRgfp8ztYvG0OuZNqWF7azd72kN09UZ4zjzEvKk1LJ42wkw1eUyIMBmRSFRhNIgwlhC2bWO2hdjWotN/KQWzPLpG4kgqS+SLrr4IG3e1s6BZe0jCUCrKXCybWc+Cphq2tnSx3+plZ1uIls4+jp5ZnOCoyUpHb5hW8RaFUSDCWCL0hqO8uMeiPaRD9j015SydUV/0PJ1tXX1s3t/JsbMamFJbnCHc8URVuZvlsz0saKpl68EuWjr7WLeznVmNVSydUT+ph58LyR/X7eHmh19hb3sPzXWVvGP1bE5d1FRss4RxighjCbDf6mXzfh1gU1Hm4qjpdSVRhHbXoRB72ns4fv4UqitKv4hvKVFXWcaqeY0DSQL2tffS1tXPspn1Y5bIfbLwx3V7uO7+F+gJ66mHlq4+7nlmB4CIozAiRBiLSCQaY/P+TvZbvUdqJE6rLbpXYds2rzpFfU9cMKXgNRsnMolJAra2dPPCbov99b0smzn2yRgmKjc//MqAKMbpj8a4f90eEUZhRIgwFon2UD+b9nbQ0x9lSq0eNk23KHwsiURjvLi3g9oKN6vmeiTIJk8kJwl4ZlsbS6bXpaxHKWhiMZto0nKy+Lcx8Xu5tz11vr1D3UMT6wtCNogwjjG2bbOttRuztZuKMhcr5niY6SmNobXesI48nTuluiSGciciiUkCtrd0s9/KLjHARCAcjQ1JiZdI4jOYQuF2Sn9lYnZjNXtSiGOTzIkLI2Ti/zeWED39UV7ca9HZG2ZBUw3eptqSGaa0esK8vK+jqOskJwtKKeY0VjOroYrdh3t4fudh5k6pwdtUM2489FjMpj8aG1KyLdH6ZKErd6uCDB9fe+6yQXOMANXlbvxvPZoZDVUc6OgdZm9BGIoI4xixz+ph8/5OPNXlnLqoqaQyxhzs6GXHoRCr5zXKvNcY4nIp5jfVMLuxih2HQvxnx2GWOJHIiVGWsxurufbcZVywZk7BbOmPxAhHY0SiNjY2Ki5xieKW8He8kHMpfF/i1yXd9ZrdVcUrBzqHJN4XhHRISjgKmxIuHI3xyv5OrJ4wS2bUlVwFdrO1m47eMMtne0a2EF3IG/2RGDvauvn75oPc+rct9ISPZIuvLndz0zuPy0ocozGbcDRGfzQ2pFYnDJ6fU2jBK3O7qHC7KHerceO15kIsZrPjUAiztXvY4dzJhKSES0/puC0TkMPd/by8v4OZDVUcO6uhKMm+0xGL2Wze30lFmYuVcxuLbY6AThKwZEY9l/3k2UGiCNATjvKNv2zm9KOadPKHxI0p5+YUlWUu6ivLJqTQ5YrLpVjYXMssTxWv7O+UdHHCsIgwFgDbttna0k2oP8KaeaW3BjAcjfHiHotZnuqSCfwRjrDPSj0ntt/qpbm2sqQesMYbVeVuVs1rpLWrjy37OwfSLgpCIiKMeSbUH2FbSzeznAoYpUaoP8LL+zo4anrxs+oIqUkXZTm7sVpEMU8011UydVEFZls3Zlv3oBqngiDCOEJSBUectriJ/kis5IZN4xzu7md7WzfLZ3tKImhCSE26KMtrz11WRKsmHi6XYtG0OmZ5qnnlQKfkVxUGKAlh9PqDU4EfA+cArcB1ZsD3yxT9FBAAPuw03QX4zYDPdravdo5zDPAy8CEz4Fufb3uTU1Dtae/B//uN/M8FK3jXifPyfbq8sLe9h0Pd/aya2yhBNiVOpihLIb9UV7hZPa+Rg529vHqgix4ZXp30lIQwAt8H+oEZwGog6PUHN5gB36akflcCFwCrABv4K7AduMPrD1YADwC3Aj8APgo84PUHl5gBX15TYKRKQdUbiXHr314tSWF87WAXLgUr5niKbYqQJResmSNCOMZMr6+iqbYSs62bHTK8mh8MzxCnB8Ma4vRgeFI6PRiWjeFZCtwMnA64gX8Dn8KwXimU2UVfXe71B2uBi4DrzYCvywz4ngQeBD6QovtlwLfNgG+3GfDtAb4NXO5sOwst9LeaAV+fGfB9Fx2v98Z825wuBVW69mIRjdls2mvRUFXGommlN98pCKWG26Vrn566qImmOkl0kQcSnZ5LgdsxPMtT9Et0elYC56OdG4BGtCYsc47zLNoJKhil4DEuBSJmwLcloW0D8IYUfZc72xL7LU/YtjE+rOqw0Wn/S/KBvP7glegPY0j2jkwMFxxRKvRForyyvxNvcy0NJZCDVRDGEzUVZayZP4WDHb1sOdBFb1iGV3PG8MSdnhUYVhfwJIYn7vT4k3pfBnwbw9rt7Ptt4CPAHRjWs2gxjB/3FuBLGJ4mDKutEKaXgjDWAR1JbRZQn6avldSvzpl7TN423HEwA747gTsBam9TOSljqQdHdPVF2N7SzbKZ9VSWSZCNIIyU6Q1VNNVVsr21i52HQjK8mkBzjSrD8DyX0HQnhnVnwuulQATDGq3Tk8zrgf2FEkUoDWHsAhqS2hqAziz6NgBdZsBne/3BXI4zKko5OKK1q4/Wrj6Wzy7NyFhBGG+4XYqjptczy1PN5v2dHJaqHQC0huwIhnXiMF1G7fRgeBSGdcRxMTxz0cOz14zI6CwpBWHcApQ5QTKvOm2rgOTAG5y2VRxxqxP7bQI+6/UHVcJw6kr0Rcw7pRgcsetQiJhtc/TM5OcDQRBGS21lGScsmMKBjl62HOikLyzuYwZG7fQkieI04BHgBxjWffk1dTBFF0Yz4Ov2+oP3Azd6/cEPo6NS34GOQErmHuAarz/4EDoq9bPAbc62tUAU+JTXH7wDPT4N8PfCWV8a6Ew7XTRUl5dcLlZBmGjMaKiiqbaC7a3d7DwUQtJNp2ULUIbhWYJhjcbpAcMzBS2KD2JYXyuYxQ5Fj0p1uAqoBg4C9wEfNwO+TV5/8ExniDTOD4E/AS8ALwJBpw1nScYFwAeBduAK4IJ8L9UoNSLRGK8c6GRGQ5WIoiCMEWVundf2lEVNTKmV4LaUGFY3cD9wI4anFsNzBtrpuTdF73uAazA8czA8s9FOz936OJ4G4GHgKQwrOWinIEh1DQpbXaOQ9IajmG3dLGquo6KsVJ5xBGHysc/q4dUDXfSnqGZSqoxJdQ29jvEnwFuANvTaxF9ieM4E/oxh1Tn9FPANBq9j/LyzjvEytEiG0COFcY7FsHaOyPgMiDAyPoXR6gnT0tnHouZaCbIRhBIgHI2xraWb3YfHx/CqlJ1Kj7gZ45CDHb109IQ5anqdiKIglAjlbhfLZtZz8sKpNNbI8Op4RoRxnLHrUAiXSzFvak2xTREEIQX1VeWc6J3KsbMbZIpjnFL0qFQhO+IVyKfXV1JbKR+bIJQ6sxurmVZfydaWLvYc7hkXw6uCRh5nxgHhaIztbd3MaawWURSEcUS528XRMxs4aeFUPDK8Om4QYSxxQv0R9rb3sLCpVoZlBGGc0lBVzkneqRwzu4Fy+T8uecT9KGHaQ/30hmMsaJqQgV+CMOmY01jNtLpKXjvYVXLVeIQjyKNLiXKwsxfbhpkeWbQvCBOJijIXx87Ww6v1VeKblCIijCXI3vYe6irLmFIr9eAEYaLiqS7n5IVTWTaznjK3LLsqJeRxpYSIxmz2WT3MaKii3C3PLIIw0VFKL72a0VDFqwc72dfeW2yTBMRjLBl6w1EOdvYyp7FaRFEQJhkVZS6Wz/ZwoncKdTK8WnTkDlwCdPdF6OqLMMtTjVIypCIIk5XGmgpOkeHVoiPCWGSsUJiobdNcV1lsUwRBKAHiw6unLW6S4LsiIcJYRNq6+qgsd9FQJQt/BUEYTGWZmxVzPJywYIok9hhjinq1vf7gVODHwDlAK3CdGfD9Mk3fa4HLgAVO3x+YAd/NCdtNYAa6WDHA02bAd07hrB85tm3T1t1PY3U5ZTKfKAjCMEypreDURVPZeSjEttZuolHJLVdoiv0Y8n2gHy1oq4Gg1x/cYAZ8qSo8K3QR4o3AYuARrz+4ywz4fpXQ53wz4PtbgW0eFZFoDKsnTFNthcwnCoKQFUopFjTV6ujVA10c6JDo1UJSNGH0+oO1wEXACjPg6wKe9PqDDwIfAIZUaTYDvm8mvHzF6w8+AJwB/Cq5b6nSG47SF4nRJPOJgiCMgKpyN8fN9TCnu5rN+zsI9UUz7yTkTDE9xqVAxAz4tiS0bQDekGlHrz+ogDOBHyZt+oXXH3QB64BrzYBvQ76MHS09/VFsbDzVMp8oCMLomFpbwakLm9h5KMT21m6iMRlezSfFFMY6oCOpzQLqs9jXQAcO/TSh7VLgefSQ66eBh73+4NFmwNee6gBef/BK4EqASIG/VN19EcrcisqyYo9cC4IwUXC5FN7mWmZ6qthyoJODHX3FNmnCULA7tdcfXEt67+8p4JNAQ1J7A9CZ4bhXo+cazzQDvoFvghnwPZXQ7SavP3gZ2qv8U6rjmAHfncCdALW3qYIpY2dvmJqKMtwumU8UBCH/VJW7WTm3kbauPl7Z30moX4ZXR0vBhNEM+M4abrszx1jm9QeXmAHfq07zKiBV4E18nyvQ84+vNwO+3RlMsNHeY1GIxWx6wlHqZSmGIAhjQFNdJacuqmDHoRCmDK+OiqKN7ZkBX7fXH7wfuNHrD34YHZX6DuD0VP29/uClwNeBs82Ab1vStvnAPODf6CHWTwLNaM90zInGbMLRmKw9EgRhTHG5FAuba5nZoIdXWzpleHUkFPvOfRXwE+Ag0AZ8PL5Uw+sPngn82Qz46py+XwWagH97/cH4/j83A76Poeclb0cv4+gF1gNvNQO+tjF6HwOEozFsWw9vCIIgFIPqCjer5jXS0tnHlgOd9Mjwak4o2xZ3u7a21u7u7h71ccLRGC6lZD5REISSIRaz2d7WzY62bmKxI+3ffHgznupyfvuxlIN0GVFKhWzbnpBV1CXtykjZ+Bu4ZQUYjXDLCqLrf02ZS0RREITSwuVSLJ5Wx6mLmmiqkxqv2VDsodTxycbfwJ8+BeEe/drahTv4aXApWPnu4tomCIKQgpqKMtbMn8LBzl627O8qtjkljQjjSHj0xiOiGCfco9tFGAVBKGGm11fRVFs5NnEQhmdIPmwMa2g+bMOjgADwYaflLsCPYdnO9tXOcY4BXgY+hGGtL5TZMpQ6Eqw0K0XStQuCIJQQbpfiwatfN+L5xRxIzId9KXA7hmd5in5XAhegl+ytBM4HPgqA4akAHgB+DkwBfgY84LQXBBHGkeCZm1u7IAjCZMPwxPNhX49hdWFYTwLxfNjJXAZ8G8PajWHtAb4NXO5sOws9unkrhtWHYX0XvUb9jYUyXYZSR8Kbvjx4jhGgvFq3C4IgTAKaa1QZhue5hKY7Maw7E14vBSIYVjb5sJc72xL7LU/YtnFgWFWz0Wn/y0jtHw4RxpEQn0d89EY9fOqZq0VR5hcFQZgktIbsCIZ14jBdcsmHXedsS+xX58w9Jm8b7jh5QYRxpKx8twihIAhCerrIPh92ct8GoAvDsjE8uRwnL8gcoyAIglAItgBlGJ4lCW3p8mFvcral6rcJWOl4j3FWpjlOXhCPURAEQcg/htWN4bkfuBHDkykf9j3ANRieh9AFID4L3OZsWwtEgU9heO4APuK0/71QpovHKAiCIBSKq4BqdD7s+4CPY1ibMDxnOkOkcX6ILhH4AvAiECReiN6w+tFLOT4ItANXABc47QVBcqWSv1ypgiAIkwXJlSoIgiAIkwTxGAGlVAzoydgx5c6uMuxYJL8W5QGxKzfErtwQu3JjYtpVbdv2xHSubNuWn1H8LPj8/z1XbBvELrFL7BK7JpJdxf6ZmGovCIIgCCNEhFEQBEEQEhBhHD13Zu5SFMSu3BC7ckPsyg2xaxwhwTeCIAiCkIB4jIIgCIKQgAijIAiCICQgwigIgiAICUgS8Qx4/cGpwI+Bc4BW4Doz4Ptlin5nA18GjgcOmwGft0TsuhZdHXuB0+8HZsB3cwnY9Rngk0AzuuTMr4FrzYCvIIugs7UroX8FulhqvRnwzS2ETbnY5fUHDeCLQF9C80oz4NtWTLucvscDt6K/+93A182A7zvFtMvrD/4ZODOhqQJ4xQz4jiuyXZXAd4ALgXLgKeBjZsC3p8h2NTp2vdVp+oEZ8BmFsGk8IB5jZr4P9AMzgEuB273+4PIU/bqBnwDXlphdCp18dwrwX8DVXn/wkhKw60HgeDPgawBWoMvMfKoE7IpzLdBSQHtGYtevzYCvLuGnIKKYi11ef7AZXUX9h0ATcBTwSLHtMgO+tyZeK+Bp4LfFtgv4NHAaumzSbOAwR6pIFNOuW4AawAucDHzA6w/+dwHtKmnEYxwGrz9YC1wErDADvi7gSa8/+CDwAcCf2NcM+J4FnvX6g28uMbu+mfDyFa8/+ABwBvCrItu1NeGlAmLom2reycUup/9C4P3ANcCPCmHTSOwaK3K06xrgYTPg+4Xzug94uQTsStzPi/YeLy8Buxair9cBZ99fA/9bAnadD7zVDPhCgOn1B3+MrmLx00LYVuqIMA7PUiBiBnxbEto2AG8okj1xRmSX1x9U6BvED0vBLq8/+D7gDqAePczz2VKwC/0E/wVGmj+3cHad7/UHDwH7gO+ZAd/tJWDXqcALXn/wafSDzb+AT5gB384i25XIB4EnzIDPLIBNudr1Y+A7Xn9wNrqE0qXAn0vALtAPqIl/ryiQXSWPDKUOTx3QkdRmoW/kxWSkdhnoz7xQT4E52WUGfL90hlKXogXyQLHt8vqDFwJuM+D7Q4FsGZFdwG+AY4Bp6EKtX/b6g+8tAbvmouewPw3MB7aj6+4V265EPgjcXQiDHHKx61VgF7DH2ecY4MYSsOsvgN/rD9Z7/cGj0N5iTYHsKnlEGIenC2hIamsAOotgSyI52+X1B69G3yB8ZsDXl67fWNsFYAZ8rwKbgB8U0y5n6OmbFHauM2e7AMyA7yUz4NtrBnxRM+B7Gh0ocXGx7UJ71X8wA75/mwFfL/AV4HSvP+gpsl0AeP3B1wEzgd8VwJ6R2PV9oBI9H1sL3E/hPMZc7PoU+rN8FXgA/XCzu0B2lTwijMOzBSjz+oNLEtpWoW/ixSQnu7z+4BXoOYU3mQFfIb/so7leZcDigliVvV1L0MEHT3j9wf3om9Ysrz+435mnKpZdqbAZPPSVT3Kxa6NjS6JdhWIk1+sy4H5njq0U7FoN3G0GfIecB9TbgJOdIKai2eXYc6kZ8M00A77laG14tgA2jQskJVwGvP7gr9D/7B9Gf6kfAk43A75NSf1c6JDws9HDgsuAmBnw9RfZrkuBbwNnmwFfQYIiRmjXh4EHzYDvoNcfPBYdMfiwGfBdUyy7vP5gGXr5SJzTge+hlyG0mAFftBh2Of3eAfwDPS91EvAH4AtmwPezfNuUo11vBH6P/t5vQnvcJ5oB35kUgGztcvpWA/uBC82A7++FsCdXu7z+4E/RXtsVQAgd/fwJM+CbU2S7FqO/W+3opR33Am9IdV0nA+IxZuYqoBo4iB5e+LgZ8G3y+oNnev3BxKfQ16OHIh5Cz7X0UNiw9Wzt+ip62ObfXn+wy/m5owTsOgMdtNGNvmYPoQNeimaXGfBFzIBvf/wHOIR+uNlfCFHM1i6HS4DX0MNg9wDfKJQo5mKXIzhfAIJO36OA9xXbLocL0Df6xwpoT652fQ7oRQ9ZtgDnodc0FtuuE4AX0N+vm4BLJ6sogniMgiAIgjAI8RgFQRAEIQERRkEQBEFIQIRREARBEBIQYRQEQRCEBEQYBUEQBCEBEUZBEARBSECSiAtCiaKUMtBpvVqBR2zb3ltciwRhciAeoyCUPpeja/cJgjAGiDAKQgmhlPqiUmqLUupJdFpBgBOBXyil1iulqotoniBMCmQoVRBKBKXUCejUb6vR/5vPA/8BngM+Z9v2c8WzThAmDyKMglA6nAn8wbbtEIBS6sEi2yMIkxIZShUEQRCEBEQYBaF0+AdwgVKqWilVD5zvtHeSuUq9IAh5QoZSBaFEsG37eaXUr4EN6DJB/3Y23Q3coZTqAU6zbbunSCYKwqRAyk4JgiAIQgIylCoIgiAICYgwCoIgCEICIoyCIAiCkIAIoyAIgiAkIMIoCIIgCAmIMAqCIAhCAiKMgiAIgpDA/w+gt9bCwR7TAwAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# Define your data\n",
    "data = np.array([\n",
    "    [0.1, 0.004594935, 0.003533, 0.0040108, 0.00472714, 0.0046558141],\n",
    "    [0.3, 0.88462878, 0.5678798, 0.44142248, 0.32360147, 0.300290409],\n",
    "    [0.5, 0.089806, 0.116980766, 0.04670006, 0.0085662, 0.0126315],\n",
    "    [0.7, 0.0997603, 0.1249526, 0.1271880, 0.1153250438, 0.12143247],\n",
    "    [0.9, 0.1721318, 0.14675536, 0.144808179, 0.1415642, 2.64384546]\n",
    "])\n",
    "\n",
    "data1 = np.array([\n",
    "    [0.1, 0.00013050, 0.0002666503, 0.000046665180259764, 0.003234338, 0.0014085],\n",
    "    [0.3, 0.04273750, 0.030208, 0.05416726, 0.001688055, 0.0618813],\n",
    "    [0.5, 0.08075318, 0.00305555, 0.04613069, 0.023499592, 0.01064494],\n",
    "    [0.7, 0.08321598, 0.0736146, 0.07003083, 0.2631810, 0.059834297],\n",
    "    [0.9, 0.03300295, 0.13740758, 0.057236404, 0.00839072, 0.06202654]\n",
    "])\n",
    "\n",
    "# Calculate the mean and variance for each row starting from the second column\n",
    "means = np.mean(data[:, 1:], axis=1)\n",
    "variances = np.var(data[:, 1:], axis=1)\n",
    "\n",
    "# Calculate the confidence intervals (mean - variance and mean + variance)\n",
    "lower_bound = means - variances\n",
    "upper_bound = means + variances\n",
    "\n",
    "# Calculate the mean and variance for each row starting from the second column for the second dataset\n",
    "means1 = np.mean(data1[:, 1:], axis=1)\n",
    "variances1 = np.var(data1[:, 1:], axis=1)\n",
    "\n",
    "# Calculate the confidence intervals (mean - variance and mean + variance) for the second dataset\n",
    "lower_bound1 = means1 - variances1\n",
    "upper_bound1 = means1 + variances1\n",
    "\n",
    "# Create a figure and the first subplot\n",
    "fig, ax1 = plt.subplots()\n",
    "\n",
    "# Plot the means with confidence intervals for the first dataset\n",
    "x = data[:, 0]  # x-axis values (first column)\n",
    "ax1.errorbar(x, means, yerr=variances, fmt='o', label='Mean of dataset 1', color='tab:blue')\n",
    "ax1.fill_between(x, lower_bound, upper_bound, alpha=0.3)\n",
    "ax1.set_xlabel('dt')\n",
    "ax1.set_ylabel('Mean (Dataset 1)', color='tab:blue')\n",
    "ax1.legend(loc='upper left')\n",
    "\n",
    "# Increase the axis label and tick size\n",
    "ax1.tick_params(axis='both', which='both', labelsize=12, colors='tab:blue')\n",
    "\n",
    "# Create a second y-axis on the right side\n",
    "ax2 = ax1.twinx()\n",
    "\n",
    "# Plot the means with confidence intervals for the second dataset\n",
    "x1 = data1[:, 0]\n",
    "ax2.errorbar(x1, means1, yerr=variances1, fmt='o', label='Mean of dataset 2', color='tab:orange')\n",
    "ax2.fill_between(x1, lower_bound1, upper_bound1, alpha=0.3)\n",
    "ax2.set_ylabel('Mean (Dataset 2)', color='tab:orange')\n",
    "\n",
    "# Increase the axis label and tick size for the second y-axis\n",
    "ax2.tick_params(axis='both', which='both', labelsize=12, colors='tab:orange')\n",
    "\n",
    "# Combine legends\n",
    "lines, labels = ax1.get_legend_handles_labels()\n",
    "lines2, labels2 = ax2.get_legend_handles_labels()\n",
    "ax1.legend(lines + lines2, labels + labels2, loc='upper left')\n",
    "\n",
    "plt.title('Mean and Confidence Interval', fontsize=16)\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "3da8fd8d",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
